summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcook.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/cook.py b/cook.py
index 87183c5..c50643e 100755
--- a/cook.py
+++ b/cook.py
@@ -173,16 +173,25 @@ class Vec(Machine):
return procs
+def find_compiler(compilers):
+ for c in compilers:
+ cc = find_program(c, required=False)
+ if cc:
+ return cc
+ return None
+
+c_compiler = find_compiler(["cc", "gcc", "clang", "clang.exe", "clang-cl.exe", "cl.exe"])
+
cc = Vec(
"cc",
- "/usr/bin/cc",
+ c_compiler,
lambda o, i, ea: "-o %s -c %s %s" % (o, i, ea),
lambda i: i.name + ".o",
desc=lambda o, i, ea: "CC %s" % (o),
)
ld = Machine(
"ld",
- "/usr/bin/cc",
+ c_compiler,
lambda o, i, ea: "-o %s %s %s" % (o, i, ea),
desc=lambda o, i, ea: "LD %s" % (o)
)