summaryrefslogtreecommitdiff
path: root/SConstruct
diff options
context:
space:
mode:
authorRyan Egesdahl <ryan.egesdahl@mongodb.com>2020-06-16 17:27:22 -0700
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-07-14 23:45:39 +0000
commit01dd381f3359c44bbc9338d91371d1ff823bb7d8 (patch)
tree58c3127d5c2c35938af5c04314d897e7a0c4938f /SConstruct
parent0daf2a1c327da1af9c53009cca44a6597373c482 (diff)
downloadmongo-01dd381f3359c44bbc9338d91371d1ff823bb7d8.tar.gz
SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+
A bug spotted in Icecream 1.2+ can cause build failures when building with gcc. This is, in turn, due to a bug in GCC where the preprocessor executed via `gcc -E` has different behavior than the one used internally during compilation. We are working with Icecream, and GCC to address these problems. For now, we work around the bugs. * GCC bug report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88475 * Icecream bug report: https://github.com/icecc/icecream/issues/550
Diffstat (limited to 'SConstruct')
-rw-r--r--SConstruct6
1 files changed, 4 insertions, 2 deletions
diff --git a/SConstruct b/SConstruct
index 9bbbd7f9b3b..e1dc9255b93 100644
--- a/SConstruct
+++ b/SConstruct
@@ -3795,9 +3795,10 @@ def doConfigure(myenv):
env = doConfigure( env )
env["NINJA_SYNTAX"] = "#site_scons/third_party/ninja_syntax.py"
+
# Now that we are done with configure checks, enable ccache and
-# icecream, if available. Per the rules declared in the icecream tool,
-# load the ccache tool first.
+# icecream if requested. If *both* icecream and ccache are requested,
+# ccache must be loaded first.
env.Tool('ccache')
if env.ToolchainIs("clang"):
@@ -3807,6 +3808,7 @@ elif env.ToolchainIs("gcc"):
env.Tool('icecream')
+
# Defaults for SCons provided flags. SetOption only sets the option to our value
# if the user did not provide it. So for any flag here if it's explicitly passed
# the values below set with SetOption will be overwritten.