Compile with -fPIC, add help option, add options for watcher

This commit is contained in:
kamkow1
2025-06-15 11:17:30 +02:00
parent 4196a4cad1
commit f4a908541a

20
build.c
View File

@ -25,9 +25,9 @@ int main(int argc, char ** argv)
RULE("./mongoose.o", "./mongoose/mongoose.c") {
#if DEBUG
CMD("cc", "-ggdb", "-c", "-D_GNU_SOURCE", "-o", "./mongoose.o", "./mongoose/mongoose.c");
CMD("cc", "-ggdb", "-c", "-fPIC", "-D_GNU_SOURCE", "-o", "./mongoose.o", "./mongoose/mongoose.c");
#else
CMD("cc", "-c", "-D_GNU_SOURCE", "-o", "./mongoose.o", "./mongoose/mongoose.c");
CMD("cc", "-c", "-fPIC", "-D_GNU_SOURCE", "-o", "./mongoose.o", "./mongoose/mongoose.c");
#endif
}
@ -36,11 +36,11 @@ int main(int argc, char ** argv)
}
#if DEBUG
CMD("cc", "-ggdb", "-I.", "-D_GNU_SOURCE", "-DGEBS_NO_PREFIX",
CMD("cc", "-fPIC", "-ggdb", "-I.", "-D_GNU_SOURCE", "-DGEBS_NO_PREFIX",
"-DINCBIN_PREFIX=", "-DINCBIN_STYLE=INCBIN_STYLE_SNAKE", "-o", "./aboba",
"./main.c", "./routes.c", "./baked.c", "./mongoose.o");
#else
CMD("cc", "-I.", "-D_GNU_SOURCE", "-DGEBS_NO_PREFIX",
CMD("cc", "-fPIC", "-I.", "-D_GNU_SOURCE", "-DGEBS_NO_PREFIX",
"-DINCBIN_PREFIX=", "-DINCBIN_STYLE=INCBIN_STYLE_SNAKE", "-o", "./aboba",
"./main.c", "./routes.c", "./baked.c", "./mongoose.o");
#endif
@ -49,6 +49,18 @@ int main(int argc, char ** argv)
remove1("./build");
remove1("./aboba");
remove("./mongoose.o");
remove("./gpp1");
remove("./watcher");
} else if (strcmp(cmd, "make-watcher") == 0) {
CMD("cc", "-o", "watcher", "watcher.c");
} else if (strcmp(cmd, "watch") == 0) {
CMD("./watcher", ".", "sh", "-c", "./build make && ./aboba");
} else if (strcmp(cmd, "help") == 0) {
LOGI("Help:\n");
printf("%s make Build the application\n", prog);
printf("%s clean Clean build atrifacts\n", prog);
printf("%s make-watcher Bootstrap source code watcher (hot recompiling)\n", prog);
printf("%s watch Watch the source code and recompile+rerun on change\n", prog);
}
return 0;