diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2024-02-24 15:31:26 -0500 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2024-02-24 15:31:26 -0500 |
| commit | a1593ad8e4bdbd5f821cf9006587f2ff97dd965f (patch) | |
| tree | e73a6a1f1200f1924d1ce6f176fc1329d919eaae /nextlang.c | |
| parent | a33de1a36e64fa87be74517ee94ea6e20a8d9223 (diff) | |
Make CC an environment variable that's read from
Diffstat (limited to 'nextlang.c')
| -rw-r--r-- | nextlang.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -79,11 +79,13 @@ int main(int argc, char *argv[]) const char *ldflags = "-Wl,-rpath '-Wl,$ORIGIN'"; - // const char *run = heap_strf("tcc -run %s %s %s -", cflags, ldflags, ldlibs); - const char *run = heap_strf("gcc -x c %s %s %s - -o program && ./program", cflags, ldflags, ldlibs); - FILE *cc = popen(run, "w"); - CORD_put(program, cc); - fclose(cc); + const char *cc = getenv("CC"); + if (!cc) cc = "tcc"; + const char *run = streq(cc, "tcc") ? heap_strf("tcc -run %s %s %s -", cflags, ldflags, ldlibs) + : heap_strf("gcc -x c %s %s %s - -o program && ./program", cflags, ldflags, ldlibs); + FILE *runner = popen(run, "w"); + CORD_put(program, runner); + fclose(runner); return 0; } |
