diff options
author | Thomas Voss <thomas.voss@humanwave.nl> | 2024-02-14 17:08:55 +0100 |
---|---|---|
committer | Thomas Voss <thomas.voss@humanwave.nl> | 2024-02-14 17:08:55 +0100 |
commit | 46bdb724b1fac2335e67b6f08b633a1a63aad552 (patch) | |
tree | f97dae5baede3b3bd3c6e976388e9f611c1896fe /make.c | |
parent | 50dd7507c103e01c23f5910041aaeb48067abfdb (diff) |
Begin implementing an SDL2 frontend
Diffstat (limited to 'make.c')
-rw-r--r-- | make.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -165,7 +165,7 @@ build_ahoy(void) glob_t g; char **objs; cmd_t c = {0}; - struct strv sv = {0}; + struct strv sv = {0}, pc = {0}; build_librune(); @@ -187,6 +187,8 @@ build_ahoy(void) else env_or_default(&sv, "CFLAGS", CFLAGS_DBG); + (void)pcquery(&pc, "sdl2", PKGC_CFLAGS); + for (size_t i = 0; i < g.gl_pathc; i++) { if (!FLAGSET('f') && !foutdated(objs[i], g.gl_pathv[i])) continue; @@ -196,6 +198,7 @@ build_ahoy(void) if (FLAGSET('l')) cmdadd(&c, "-flto"); cmdadd(&c, "-Isrc/common", "-Ivendor/da", "-Ivendor/librune/include"); + cmdaddv(&c, pc.buf, pc.len); cmdadd(&c, "-c", g.gl_pathv[i], "-o", objs[i]); CMDPRC2(c); } @@ -204,6 +207,7 @@ build_ahoy(void) goto out; strvfree(&sv); + strvfree(&pc); env_or_default(&sv, "CC", CC); env_or_default(&sv, "LDFLAGS", nullptr); @@ -211,6 +215,10 @@ build_ahoy(void) cmdaddv(&c, sv.buf, sv.len); if (FLAGSET('l')) cmdadd(&c, "-flto"); + if (pcquery(&pc, "sdl2", PKGC_LIBS)) + cmdaddv(&c, pc.buf, pc.len); + else + cmdadd(&c, "-lSDL2"); cmdadd(&c, "-o", c.dst); cmdaddv(&c, objs, g.gl_pathc); cmdadd(&c, "src/common/cerr.o", "vendor/librune/librune.a"); @@ -219,6 +227,7 @@ build_ahoy(void) out: globfree(&g); strvfree(&sv); + strvfree(&pc); for (size_t i = 0; i < g.gl_pathc; i++) free(objs[i]); } |