|
@@ -161,6 +161,27 @@ void build_all_vc_demos(void)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+void usage(const char *program)
|
|
|
+{
|
|
|
+ INFO("Usage: %s [<subcommand>]", program);
|
|
|
+ INFO("Subcommands:");
|
|
|
+ INFO(" tools");
|
|
|
+ INFO(" Build all the tools. Things like png2c, obj2c, etc.");
|
|
|
+ INFO(" assets");
|
|
|
+ INFO(" Build the assets in the assets/ folder.");
|
|
|
+ INFO(" Basically convert their data to C code so we can bake them in demos.");
|
|
|
+ INFO(" test[s] [<args>]");
|
|
|
+ INFO(" Build and run test.c");
|
|
|
+ INFO(" If <args> are provided the test utility is run with them.");
|
|
|
+ INFO(" demos [<platform>] [run]");
|
|
|
+ INFO(" Build demos.");
|
|
|
+ INFO(" Available platforms are: sdl, term, or wasm.");
|
|
|
+ INFO(" Optional [run] runs the demo after the build.");
|
|
|
+ INFO(" [run] is not available for wasm platform.");
|
|
|
+ INFO(" help");
|
|
|
+ INFO(" Print this message");
|
|
|
+}
|
|
|
+
|
|
|
int main(int argc, char **argv)
|
|
|
{
|
|
|
GO_REBUILD_URSELF(argc, argv);
|
|
@@ -173,7 +194,7 @@ int main(int argc, char **argv)
|
|
|
build_tools();
|
|
|
} else if (strcmp(subcmd, "assets") == 0) {
|
|
|
build_assets();
|
|
|
- } else if (strcmp(subcmd, "tests") == 0) {
|
|
|
+ } else if (strcmp(subcmd, "tests") == 0 || strcmp(subcmd, "test") == 0) {
|
|
|
build_tests();
|
|
|
if (argc > 0) {
|
|
|
Cmd cmd = {0};
|
|
@@ -196,6 +217,7 @@ int main(int argc, char **argv)
|
|
|
if (argc > 0) {
|
|
|
const char *run = shift_args(&argc, &argv);
|
|
|
if (strcmp(run, "run") != 0) {
|
|
|
+ usage(program);
|
|
|
PANIC("unknown action `%s` for SDL demo: %s", run, name);
|
|
|
}
|
|
|
CMD(CONCAT("./build/demos/", name, ".sdl"));
|
|
@@ -206,6 +228,7 @@ int main(int argc, char **argv)
|
|
|
if (argc > 0) {
|
|
|
const char *run = shift_args(&argc, &argv);
|
|
|
if (strcmp(run, "run") != 0) {
|
|
|
+ usage(program);
|
|
|
PANIC("unknown action `%s` for Terminal demo: %s", run, name);
|
|
|
}
|
|
|
CMD(CONCAT("./build/demos/", name, ".term"));
|
|
@@ -214,6 +237,7 @@ int main(int argc, char **argv)
|
|
|
pid_wait(build_wasm_demo(name));
|
|
|
copy_file(CONCAT("./build/demos/", name, ".wasm"), CONCAT("./wasm/", name, ".wasm"));
|
|
|
} else {
|
|
|
+ usage(program);
|
|
|
PANIC("unknown demo platform %s", platform);
|
|
|
}
|
|
|
} else {
|
|
@@ -225,7 +249,10 @@ int main(int argc, char **argv)
|
|
|
} else {
|
|
|
build_all_vc_demos();
|
|
|
}
|
|
|
+ } else if(strcmp(subcmd, "help") == 0) {
|
|
|
+ usage(program);
|
|
|
} else {
|
|
|
+ usage(program);
|
|
|
PANIC("Unknown command `%s`", subcmd);
|
|
|
}
|
|
|
} else {
|