summaryrefslogtreecommitdiff
path: root/build.c
diff options
context:
space:
mode:
authorAargh Rai <aargh.rai+git@gmail.com>2026-05-25 23:12:21 +0530
committerAargh Rai <aargh.rai+git@gmail.com>2026-05-25 23:12:21 +0530
commitc8d8d1ddf9ff8d7900d41d885cdbf177f40f0cd1 (patch)
tree1591e65f9ee3e1bd1b09404da9cc9e339e307aa7 /build.c
parent537b22d8731af4d8d6d20ce2eade5c0c4a5f2253 (diff)
find tests before compilation
Diffstat (limited to 'build.c')
-rw-r--r--build.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/build.c b/build.c
index ec698c8..7ab787f 100644
--- a/build.c
+++ b/build.c
@@ -40,6 +40,21 @@ int main(int argc, char** argv) {
if (strcmp(argv[1], "test") == 0) {
printf("Test mode\n");
if (fork() == 0) {
+ char* args[] = {"gcc", "generate/find_tests.c", "-o", "find_tests.o", NULL};
+ execvp(args[0], args);
+ return 0;
+ } else {
+ wait(NULL);
+ }
+ if (fork() == 0) {
+ char* args[] = {"./find_tests.o", NULL};
+ execvp(args[0], args);
+ return 0;
+ } else {
+ wait(NULL);
+ }
+ printf("\n");
+ if (fork() == 0) {
char* args[] = {"gcc", "tests/main.c", "-o", "test.o", NULL};
execvp(args[0], args);
return 0;