33 lines
900 B
C
33 lines
900 B
C
#define GEBS_NO_PREFIX
|
|
#define GEBS_IMPLEMENTATION
|
|
#include "gebs/gebs.h"
|
|
|
|
char *prog = NULL;
|
|
|
|
int main(int argc, char ** argv)
|
|
{
|
|
rebuild_self(argc, argv, "cc", "-o", "build", "build.c");
|
|
|
|
prog = SHIFT(&argc, &argv);
|
|
char *cmd = SHIFT(&argc, &argv);
|
|
if (strcmp(cmd, "make") == 0) {
|
|
RULE("./aboba", "./main.c", "./mongoose.o", "./gpp1") {
|
|
RULE("./mongoose.o", "./mongoose/mongoose.c") {
|
|
CMD("cc", "-c", "-o", "./mongoose.o", "./mongoose/mongoose.c");
|
|
}
|
|
|
|
RULE("./gpp1", "./gpp/gpp.c") {
|
|
CMD("cc", "-DHAVE_STRDUP", "-DHAVE_FNMATCH_H", "-o", "gpp1", "gpp/gpp.c");
|
|
}
|
|
|
|
CMD("cc", "-o", "./aboba", "./main.c", "./mongoose.o");
|
|
}
|
|
} else if (strcmp(cmd, "clean") == 0) {
|
|
remove1("./build");
|
|
remove1("./aboba");
|
|
remove("./mongoose.o");
|
|
}
|
|
|
|
return 0;
|
|
}
|