Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | SERVER-51318 Explicitly set pre/post libdeps flags to be set to nothing. | Daniel Moody | 2020-10-06 | 1 | -0/+1 |
| | |||||
* | SERVER-50363 Merge --build-tools=next into stable | Ryan Egesdahl | 2020-10-06 | 3 | -248/+641 |
| | | | | | | | | | | | | | | | 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 | ||||
* | SERVER-50258 Added libdeps rule to enforce that DEPS_DEPENDENTS are actually ↵ | Daniel Moody | 2020-09-25 | 1 | -0/+1033 |
| | | | | built and split libdeps into next version | ||||
* | SERVER-50376 Ninja should rebuild on compiler and tool changes | Daniel Moody | 2020-09-21 | 2 | -8/+51 |
| | |||||
* | Revert "SERVER-50376 Ninja should rebuild on compiler and tool changes" | Kaloian Manassiev | 2020-09-09 | 2 | -25/+9 |
| | | | | This reverts commit 58fd67fc2232a4ca591ff66443fd22213d4b5cac. | ||||
* | SERVER-50376 Ninja should rebuild on compiler and tool changes | Ryan Egesdahl | 2020-09-09 | 2 | -9/+25 |
| | | | | | | | Allow Ninja to rebuild build.ninja any time a SCons tool or the compiler is changed between iterative rebuilds. This change allows us to ensure that we don't have any stale object files lying around that may have been produced by an incompatible toolchain. | ||||
* | Revert "SERVER-50376 Ninja should rebuild on compiler and tool changes" | Ryan Egesdahl | 2020-09-04 | 2 | -25/+9 |
| | | | | This reverts commit 4d43e298fe956c57b3cb0310bcd0785c19f75ef7. | ||||
* | SERVER-50376 Ninja should rebuild on compiler and tool changes | Ryan Egesdahl | 2020-09-03 | 2 | -9/+25 |
| | | | | | | | Allow Ninja to rebuild build.ninja any time a SCons tool or the compiler is changed between iterative rebuilds. This change allows us to ensure that we don't have any stale object files lying around that may have been produced by an incompatible toolchain. | ||||
* | SERVER-50125 Add sanitizer blacklist files to CCACHE_EXTRAFILES | Ryan Egesdahl | 2020-09-03 | 1 | -0/+10 |
| | | | | | | | | | | | | | | | 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 | ||||
* | SERVER-47943 Make bad icecream and ccache paths fail hard | Ryan Egesdahl | 2020-09-03 | 2 | -96/+264 |
| | | | | | | | | 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. | ||||
* | SERVER-50689 Support ABI driven linking on macOS with tapi | Andrew Morrow | 2020-09-03 | 1 | -0/+108 |
| | |||||
* | SERVER-27507 Add basic visibility support and a test | Andrew Morrow | 2020-09-02 | 2 | -4/+12 |
| | |||||
* | SERVER-50674 Don't strip local symbols on darwin | Andrew Morrow | 2020-09-02 | 1 | -1/+1 |
| | |||||
* | SERVER-49168 made SYSLIBDEPS_PRIVATE type and switched lzma to use it | Daniel Moody | 2020-08-27 | 2 | -50/+61 |
| | |||||
* | SERVER-49703 Added libdep linter alphabetic rule and update all libdeps list ↵ | Daniel Moody | 2020-08-27 | 5 | -8/+45 |
| | | | | to be alphabetical | ||||
* | SERVER-49119 Added way for libdeps to generically handle prefix/postfix ↵ | Daniel Moody | 2020-08-27 | 1 | -33/+153 |
| | | | | flags, moved --whole-archive out to SConstruct and add --as-needed for dynamic | ||||
* | SERVER-50010 Added mechanism for custom deps for REGENERATE rule | Daniel Moody | 2020-08-26 | 1 | -7/+25 |
| | |||||
* | SERVER-49760 Added libdep lint rule to enforce no public libdeps. | Daniel Moody | 2020-08-25 | 1 | -0/+24 |
| | |||||
* | SERVER-49761 Added libdeps rule for leaf node no dependencies | Daniel Moody | 2020-08-21 | 1 | -3/+30 |
| | |||||
* | SERVER-47598 Refactor ICECC_VERSION handling | Andrew Morrow | 2020-08-18 | 2 | -3/+568 |
| | |||||
* | SERVER-49466 Introduce a flag to opt in to newer mongodb SCons tools as a group | Andrew Morrow | 2020-08-17 | 1 | -0/+0 |
| | |||||
* | SERVER-48638 added missing quote to error message | Daniel Moody | 2020-08-15 | 1 | -1/+1 |
| | |||||
* | SERVER-49457 Ninja tool static links should delete existing archive before ↵ | Daniel Moody | 2020-08-14 | 1 | -1/+9 |
| | | | | linking" | ||||
* | SERVER-49493 Add use of depfile to ninja tool | Daniel Moody | 2020-07-29 | 1 | -16/+62 |
| | |||||
* | SERVER-49799 Switched libdeps environment vars to single location in an ↵ | Daniel Moody | 2020-07-28 | 1 | -36/+43 |
| | | | | internal CONST class. | ||||
* | SERVER-48041 Package santizer blacklist files in icecream environments | Ryan Egesdahl | 2020-07-24 | 1 | -9/+0 |
| | | | | | | | | 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. | ||||
* | SERVER-48638 Added LibdepsLinter to enforce LIBDEPS rules | Daniel Moody | 2020-07-23 | 1 | -37/+301 |
| | |||||
* | SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+ | Ryan Egesdahl | 2020-07-17 | 2 | -9/+46 |
| | | | | | | | | | | | 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 | ||||
* | Revert "SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+" | Ryan Egesdahl | 2020-07-17 | 2 | -48/+42 |
| | | | | This reverts commit 01dd381f3359c44bbc9338d91371d1ff823bb7d8. | ||||
* | SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+ | Ryan Egesdahl | 2020-07-14 | 2 | -42/+48 |
| | | | | | | | | | | | 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 | ||||
* | SERVER-49016 added check for icecream version and handle missing cpuinfo | Daniel Moody | 2020-07-10 | 1 | -2/+33 |
| | |||||
* | SERVER-48885 Environment variables values with spaces can cause build failures | Ryan Egesdahl | 2020-07-09 | 1 | -1/+7 |
| | | | | | | | | | | If any environment variable (including PATH) were to somehow make its way into your build.ninja, it would cause build failures due to the fact that the shell splits it into separate arguments. This can happen sometimes especially on OSX, where the PATHOSX environment variable gets (incorrectly) copied by SCons into the current build environment. Regardless of whatever SCons should be doing, we will quote environment variable values in Ninja builds to ensure it doesn't happen again. | ||||
* | SERVER-47277 Remove non-hygienic build support | Andrew Morrow | 2020-07-08 | 2 | -17/+0 |
| | |||||
* | SERVER-49036 expand response files for generating the compdb from ninja | Daniel Moody | 2020-07-02 | 1 | -2/+26 |
| | |||||
* | SERVER-49141 Ensure that LIBDEPS for libunwind do not accidentally become public | Andrew Morrow | 2020-06-29 | 4 | -5/+5 |
| | |||||
* | SERVER-48966 Added sources to the ninja tool for reinvokation targets, skip ↵ | Daniel Moody | 2020-06-25 | 1 | -7/+33 |
| | | | | Python.Value nodes. | ||||
* | SERVER-48289 Ignore unused compiler flags | Ryan Egesdahl | 2020-05-29 | 1 | -0/+9 |
| | | | | | | | | | Some compiler flags passed in from the environment can cause icecc to only build locally because the compiler gives an error saying the flag is not supported. It may also have been causing problems with using ccache in general. There may be other negative behaviors that we don't know of that haven't been reported yet. This wasn't a problem in the older Ninja build system, but it is in the newer one. | ||||
* | SERVER-47776 Promote ninja_next.py to ninja.py | Andrew Morrow | 2020-05-28 | 1 | -147/+205 |
| | |||||
* | SERVER-48454 Ignore [UN]CHANGED_[SOURCES|TARGETS] during ninja generation | Andrew Morrow | 2020-05-28 | 1 | -0/+10 |
| | |||||
* | SERVER-48348 Do not sort dwo files in ahead of object files during Ninja ↵ | Andrew Morrow | 2020-05-26 | 1 | -2/+11 |
| | | | | generation | ||||
* | SERVER-47905 Handle all setup cases in icecream.py correctly | Andrew Morrow | 2020-05-04 | 1 | -73/+81 |
| | |||||
* | SERVER-47904 Python jobs should flow through icerun | Andrew Morrow | 2020-05-04 | 1 | -9/+18 |
| | |||||
* | SERVER-47903 Disable ccache and icecc for conftest jobs | Andrew Morrow | 2020-05-04 | 2 | -5/+34 |
| | |||||
* | SERVER-47901 Require ccache when using icecream 1.1 and ninja | Andrew Morrow | 2020-05-04 | 1 | -0/+3 |
| | |||||
* | SERVER-47865 Fix invalid subst where a variable was passed where a node is ↵ | Andrew Morrow | 2020-05-01 | 1 | -2/+8 |
| | | | | required | ||||
* | SERVER-47818 Repair test execution aliases in hygienic mode | Andrew Morrow | 2020-04-29 | 1 | -5/+4 |
| | |||||
* | SERVER-47637 Relicense all SCons tools to either MIT or SSPL | Andrew Morrow | 2020-04-28 | 34 | -205/+636 |
| | |||||
* | SERVER-45785 Simplify implementation of DESTDIR | Andrew Morrow | 2020-04-27 | 2 | -55/+21 |
| | | | | | | | Also: - Correctly honor default targets in hygienic mode. - Fix a latent variable reuse bug in auto_install_pseudobuilder | ||||
* | SERVER-46519 Do not force a global rebuild on ninja regeneration | Andrew Morrow | 2020-04-27 | 1 | -8/+8 |
| | |||||
* | SERVER-47721 Make generated ninja file deterministic | Andrew Morrow | 2020-04-27 | 1 | -8/+18 |
| |