summaryrefslogtreecommitdiff
path: root/SConstruct
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-38289 Teach objects builders how to build idl files.Daniel Moody2020-10-221-0/+4
| | | | (cherry picked from commit 298d4d6bbb9980b74bded06241067fe6771bef68)
* SERVER-50363 Merge --build-tools=next into stableRyan Egesdahl2020-10-131-74/+48
| | | | | | | | | | | | | | | | | Merging the following fixes into the stable version of the build tools and migrate fully from --ninja=next to the --build-tools=next: * SERVER-47598 * SERVER-50010 * SERVER-47943 * SERVER-50125 * SERVER-50376 * SERVER-49457 * SERVER-49493 * SERVER-49036 * SERVER-48966 (cherry picked from commit 78bb3f3c8a658a5a9fec8d55864e426382f68bd0)
* SERVER-49857 Explicit llvm-symbolizer path handling with {A,T,UB}SANRyan Egesdahl2020-10-131-20/+55
| | | | | | | | | | | The toolchain llvm-symbolizer was never actually in PATH despite the toolchain being appended to it in evergreen.yml, causing confusion while attempting to diagnose an apparent symbolization failure. This change explicitly sets the path to llvm-symbolizer for all sanitizer build variants and removes the last vestiges of the non-working discovery method. (cherry picked from commit 20ed5d51cb1c82597f65967be69b81e6e72c0413)
* Revert "SERVER-50363 Merge --build-tools=next into stable"Ryan Egesdahl2020-10-131-103/+94
| | | | This reverts commit 7b93770e0835087c023ae3e3f36eeb46d204767f.
* SERVER-50363 Merge --build-tools=next into stableRyan Egesdahl2020-10-071-94/+103
| | | | | | | | | | | | | | | | | Merging the following fixes into the stable version of the build tools and migrate fully from --ninja=next to the --build-tools=next: * SERVER-47598 * SERVER-50010 * SERVER-47943 * SERVER-50125 * SERVER-50376 * SERVER-49457 * SERVER-49493 * SERVER-49036 * SERVER-48966 (cherry picked from commit 78bb3f3c8a658a5a9fec8d55864e426382f68bd0)
* SERVER-50125 Add sanitizer blacklist files to CCACHE_EXTRAFILESRyan Egesdahl2020-10-071-11/+35
| | | | | | | | | | | | | | | | | Some versions of ccache do not know how to handle clang's -fsanitizer-blacklist flags. Some versions don't handle it at all, while others only handle one instance, even though it can appear multiple times on the command line. Because the argument can change the resulting compiled object, not taking the flags into account properly can cause ccache to pull an incorrect object file from its cache. The exact behavior depends on the ccache version and how the arguments are changed on the command line. We implement a workaround suggested by the ccache developers until a newer version of ccache with all the required fixes is in common use. * Workaround ref: https://github.com/ccache/ccache/issues/174 (cherry picked from commit 37276b21f4dbd66f913e8d49577fd4b1c4eafbf9)
* SERVER-50376 Ninja should rebuild on compiler and tool changesDaniel Moody2020-09-211-2/+8
| | | | (cherry picked from commit 6cddc81cc79964a10161b95b5c9702cda1afa2c1)
* SERVER-47943 Make bad icecream and ccache paths fail hardRyan Egesdahl2020-09-091-12/+38
| | | | | | | | | | If CCACHE or ICECC are specified on the SCons command line but the paths given don't exist, the associated tool would simply be skipped. This caused confusion when users were expecting the tool to run and the compile would proceed without it. Now specifying an incorrect path to the tool will cause a configure failure. (cherry picked from commit ecc06d297844ec06d206d68e0759e2078cd272d2)
* SERVER-50010 Added mechanism for custom deps for REGENERATE ruleDaniel Moody2020-09-091-0/+18
| | | | (cherry picked from commit fff906108611c79956cd5bd7dc68aada59eff361)
* SERVER-50016 Fail on missing variables filesAndrew Morrow2020-09-091-8/+7
| | | | (cherry picked from commit 5b3086d02c905b528a28d3a751af7c6b154d2f95)
* SERVER-47598 Refactor ICECC_VERSION handlingAndrew Morrow2020-08-181-2/+5
| | | | (cherry picked from commit 0662433ac038f4f3cf137a1be30ca245c180e990)
* SERVER-49466 Introduce a flag to opt in to newer mongodb SCons tools as a groupr4.4.1-rc0Andrew Morrow2020-08-181-6/+18
| | | | (cherry picked from commit c40e96ea0b650402af0b52bd6a70f5ea67464054)
* SERVER-49493 Add use of depfile to ninja toolDaniel Moody2020-08-061-0/+1
| | | | (cherry picked from commit 3202a05352a9bff4cb00145aecb03aabac7af69a)
* SERVER-48041 Package santizer blacklist files in icecream environmentsRyan Egesdahl2020-08-061-1/+9
| | | | | | | | | | Before this point, remote builds did not work because Icecream did not copy sanitizer blacklist files to the remote hosts. We had a check in place that silently turned Icecream builds with sanitizers into local builds. Now we build the sanitizer blacklist files into the environment tarball that Icecream uses for remote builds. (cherry picked from commit cdab099b95de7e2ea7aa9cf23ede566189a35756)
* SERVER-49395 more portable way for ninja to build unittests.txtDaniel Moody2020-08-061-7/+9
| | | | (cherry picked from commit ab1a892520e9a9b84ae90d52f84a0f107efbdecd)
* SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+Ryan Egesdahl2020-08-061-2/+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: icecc/icecream#550 (cherry picked from commit f69c932697877c4036aca066cf212eaad55be070)
* SERVER-49036 expand response files for generating the compdb from ninjaDaniel Moody2020-08-061-0/+7
| | | | (cherry picked from commit 5fe923a0aa312044062df044eb4eaa47951f70ec)
* SERVER-41674 Make hygienic builds the defaultAndrew Morrow2020-06-041-2/+2
| | | | (cherry picked from commit 642a530878d2b7f929bedf9d93cf0ee23d05ccfa)
* SERVER-47776 Promote ninja_next.py to ninja.pyAndrew Morrow2020-05-281-34/+0
| | | | (cherry picked from commit 463d6ccc4db36ae3d1fb9eca96838acf6b753680)
* SERVER-48139 Dagger should depend on install-all-meta in hygienic modeAndrew Morrow2020-05-151-4/+3
| | | | (cherry picked from commit 7ebf6ac44459a2ecb69243a204860b99dabe21b0)
* SERVER-47902 Ensure ninja generators local_pool has real concurrencyAndrew Morrow2020-05-131-24/+46
| | | | (cherry picked from commit 4423364192774ed484dedd943a0bd1f04fd84e41)
* SERVER-47796: Ensure linters run against enterprise modulesDavid Bradford2020-05-061-2/+2
| | | | (cherry picked from commit 74ea6aa4dfd7b3b4acf090084d36891834a49385)
* SERVER-47901 Require ccache when using icecream 1.1 and ninjaAndrew Morrow2020-05-051-0/+7
| | | | (cherry picked from commit 2f4044b526ee39cebfe777ecf38653b12bbe092a)
* SERVER-47906 Default target should always be install-default in hygienic modeAndrew Morrow2020-05-051-1/+1
| | | | (cherry picked from commit 11a967280bcb5ac15096e1ee63d0b0c17ef1f616)
* SERVER-47865 Fix invalid subst where a variable was passed where a node is ↵Andrew Morrow2020-05-011-2/+1
| | | | required
* SERVER-45785 Simplify implementation of DESTDIRAndrew Morrow2020-04-291-2/+7
| | | | | | | | | Also: - Correctly honor default targets in hygienic mode. - Fix a latent variable reuse bug in auto_install_pseudobuilder (cherry picked from commit 404e44ce81b762db8ceee31df8e5b344f717e6a5)
* SERVER-47721 Make generated ninja file deterministicAndrew Morrow2020-04-291-1/+1
| | | | (cherry picked from commit de6e9c18e3a4ee418cff8338400668f9b6b7cf3e)
* SERVER-47110 Don't emit the PDB file twice when separate debug is enabledAndrew Morrow2020-04-291-0/+7
| | | | (cherry picked from commit 4ccd6ac3af74339c9fc1576875ce2377edbee1f2)
* SERVER-46129 Fix various DAG inconsistenciesMathew Robinson2020-04-261-7/+7
| | | | | | | Some dependencies were getting wired when they should not or were false dependencies. (cherry picked from commit 727fe1181cc8ff8d3c6282662229d28651a927d9)
* SERVER-46458 build/unittests.txt does not expand newlines with ninjaMathew Robinson2020-04-261-2/+3
| | | | (cherry picked from commit 7d095214ed875903d6531a9ba553cd0b94deea14)
* SERVER-44067 Increase macosx target to 10.13Andrew Morrow2020-04-201-4/+2
| | | | (cherry picked from commit 85e982db8d205297a78f20d3bc0ba93b50e1b1f9)
* SERVER-47399 Use File Nodes to manage dSYM substructureAndrew Morrow2020-04-201-1/+12
| | | | (cherry picked from commit 463cc815528b42c3c2f81dc7137cc27f7e7cc974)
* SERVER-46744 Install unit test debug info without increasing disk utilizationAndrew Morrow2020-04-201-6/+30
| | | | (cherry picked from commit cfa89fbaf0b397f07d8f9c884a04776224b4e918)
* SERVER-46364 Move errorcodes check to lint phase.Henrik Edin2020-03-261-10/+8
| | | | (cherry picked from commit 560f40b2bfcccd731708be9ed49676a2ca72a146)
* SERVER-46008 Remove thread specific attributes feature from boost::logHenrik Edin2020-03-261-0/+1
| | | | | | | | | Because we prefer to compile with BOOST_LOG_USE_COMPILER_TLS for performance reasons it is not safe to log during global shutdown because of the uses of thread_local. We are not using this feature so we remove it instead of removing BOOST_LOG_USE_COMPILER_TLS and affecting the server. The issue only affects unittests as we only do clean shutdown there. (cherry picked from commit 23a5160098996b401a1145504a7be356a3e6c8f1)
* SERVER-47004: Properly run eslint on modulesDavid Bradford2020-03-201-1/+9
| | | | (cherry picked from commit ef6cd28bc3f39d2c7e7bb175fcbc7e83584f11c0)
* Revert "SERVER-46786 fix dagger"Robert Guo2020-03-121-1/+1
| | | | This reverts commit 64adbd359a562ec06c1ce51f63a46f09237646a8.
* SERVER-46643: Only lint changed files on enterprise-only changesDavid Bradford2020-03-111-1/+1
| | | | (cherry picked from commit ac9caedb40dd0616a10b38db7efdc404052527bb)
* SERVER-46786 fix daggerRobert Guo2020-03-111-1/+1
| | | | (cherry picked from commit a5476ac69b7b7d76440da9db06c19a10b1a98194)
* SERVER-46129 Ignore things that aren't builders when hooking into emitters ↵Mathew Robinson2020-02-271-1/+0
| | | | for the ninja file
* SERVER-46129 Escape scons variable correctly in subst stringMathew Robinson2020-02-271-2/+2
|
* SERVER-46129 Fix broken NINJA_*IX vars for ninja stableMathew Robinson2020-02-271-2/+5
|
* Revert "SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like ↵Ben Caimano2020-02-241-1/+1
| | | | | | regular SCons expansions" This reverts commit eae0b5ee0dabf2cc01008c3e4eb1c82ced80f629.
* SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like regular ↵Mathew Robinson2020-02-241-1/+1
| | | | SCons expansions
* SERVER-46197 Make build flag to disable diagnostic latchesBen Caimano2020-02-241-0/+10
|
* SERVER-46129 Make ninja faster and contain all targets all the timeMathew Robinson2020-02-221-39/+37
|
* SERVER-40943 Support fetching icecream toolchain tarballs from URLs in SConsMathew Robinson2020-02-211-2/+7
|
* SERVER-46096 Add NINJA_PREFIXMathew Robinson2020-02-211-2/+25
|
* SERVER-46282 Do A/B releases of NinjaMathew Robinson2020-02-211-12/+15
|
* SERVER-27675 Make all targets depend on the allocator shim to topsort it lastAndrew Morrow2020-02-211-9/+0
|