diff options
author | Ryan Egesdahl <ryan.egesdahl@mongodb.com> | 2020-06-16 17:27:22 -0700 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-07-14 23:45:39 +0000 |
commit | 01dd381f3359c44bbc9338d91371d1ff823bb7d8 (patch) | |
tree | 58c3127d5c2c35938af5c04314d897e7a0c4938f /SConstruct | |
parent | 0daf2a1c327da1af9c53009cca44a6597373c482 (diff) | |
download | mongo-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-- | SConstruct | 6 |
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. |