summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SConstruct6
-rw-r--r--methods.py4
2 files changed, 7 insertions, 3 deletions
diff --git a/SConstruct b/SConstruct
index 20bd841e4c..45108721ad 100644
--- a/SConstruct
+++ b/SConstruct
@@ -510,7 +510,7 @@ if selected_platform in platform_list:
if methods.using_gcc(env):
common_warnings += ["-Wshadow-local", "-Wno-misleading-indentation"]
- elif methods.using_clang(env):
+ elif methods.using_clang(env) or methods.using_emcc(env):
# We often implement `operator<` for structs of pointers as a requirement
# for putting them in `Set` or `Map`. We don't mind about unreliable ordering.
common_warnings += ["-Wno-ordered-compare-function-pointers"]
@@ -532,7 +532,7 @@ if selected_platform in platform_list:
env.Append(CXXFLAGS=["-Wplacement-new=1"])
if cc_version_major >= 9:
env.Append(CCFLAGS=["-Wattribute-alias=2"])
- elif methods.using_clang(env):
+ elif methods.using_clang(env) or methods.using_emcc(env):
env.Append(CCFLAGS=["-Wimplicit-fallthrough"])
elif env["warnings"] == "all":
env.Append(CCFLAGS=["-Wall"] + common_warnings)
@@ -548,7 +548,7 @@ if selected_platform in platform_list:
env.Append(CXXFLAGS=["-Wno-error=cpp"])
if cc_version_major == 7: # Bogus warning fixed in 8+.
env.Append(CCFLAGS=["-Wno-error=strict-overflow"])
- elif methods.using_clang(env):
+ elif methods.using_clang(env) or methods.using_emcc(env):
env.Append(CXXFLAGS=["-Wno-error=#warnings"])
else: # always enable those errors
env.Append(CCFLAGS=["-Werror=return-type"])
diff --git a/methods.py b/methods.py
index 13851d8315..970bd10aa3 100644
--- a/methods.py
+++ b/methods.py
@@ -828,6 +828,10 @@ def using_clang(env):
return "clang" in os.path.basename(env["CC"])
+def using_emcc(env):
+ return "emcc" in os.path.basename(env["CC"])
+
+
def show_progress(env):
import sys
from SCons.Script import Progress, Command, AlwaysBuild