Eoin O'Neill 2024-02-01 20:25:06 -08:00 committed by GitHub
commit 13b4ab2a57
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 4 additions and 4 deletions

View File

@ -24,7 +24,7 @@ def using_clang(env):
return "clang" in os.path.basename(env["CC"]) return "clang" in os.path.basename(env["CC"])
def is_vanilla_clang(env): def is_clang_type(env, family_string):
if not using_clang(env): if not using_clang(env):
return False return False
try: try:
@ -32,7 +32,7 @@ def is_vanilla_clang(env):
except (subprocess.CalledProcessError, OSError): except (subprocess.CalledProcessError, OSError):
print("Couldn't parse CXX environment variable to infer compiler version.") print("Couldn't parse CXX environment variable to infer compiler version.")
return False return False
return not version.startswith("Apple") return version.startswith(family_string)
# Main tool definition # Main tool definition
@ -125,10 +125,10 @@ def generate(env):
else: else:
env.Append(CCFLAGS=["-g2"]) env.Append(CCFLAGS=["-g2"])
else: else:
if using_clang(env) and not is_vanilla_clang(env): if using_clang(env) and is_clang_type(env, "Apple"):
# Apple Clang, its linker doesn't like -s. # Apple Clang, its linker doesn't like -s.
env.Append(LINKFLAGS=["-Wl,-S", "-Wl,-x", "-Wl,-dead_strip"]) env.Append(LINKFLAGS=["-Wl,-S", "-Wl,-x", "-Wl,-dead_strip"])
else: elif is_clang_type(env, "clang"):
env.Append(LINKFLAGS=["-s"]) env.Append(LINKFLAGS=["-s"])
if env["optimize"] == "speed": if env["optimize"] == "speed":