0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-12-01 09:32:32 +01:00
Commit Graph

235 Commits

Author SHA1 Message Date
Daniel Moody
cc68e42e8d SERVER-49761 Added libdeps rule for leaf node no dependencies 2020-08-21 20:17:47 +00:00
Andrew Morrow
0662433ac0 SERVER-47598 Refactor ICECC_VERSION handling 2020-08-18 17:21:36 +00:00
Andrew Morrow
c40e96ea0b SERVER-49466 Introduce a flag to opt in to newer mongodb SCons tools as a group 2020-08-17 22:09:57 +00:00
Daniel Moody
ecd1e0b022 SERVER-48638 added missing quote to error message 2020-08-15 03:08:48 +00:00
Daniel Moody
a78139a155 SERVER-49457 Ninja tool static links should delete existing archive before linking" 2020-08-14 05:07:11 +00:00
Daniel Moody
3202a05352 SERVER-49493 Add use of depfile to ninja tool 2020-07-29 20:20:31 +00:00
Daniel Moody
47d5332624 SERVER-49799 Switched libdeps environment vars to single location in an internal CONST class. 2020-07-28 19:55:26 +00:00
Ryan Egesdahl
cdab099b95 SERVER-48041 Package santizer blacklist files in icecream environments
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.
2020-07-24 17:35:55 +00:00
Daniel Moody
d986854f5e SERVER-48638 Added LibdepsLinter to enforce LIBDEPS rules 2020-07-23 21:52:22 +00:00
Ryan Egesdahl
f69c932697 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: icecc/icecream#550
2020-07-17 21:33:57 +00:00
Ryan Egesdahl
4635320ea1 Revert "SERVER-48443 Fix builds with Icecream 1.2+ and gcc 4.4+"
This reverts commit 01dd381f33.
2020-07-17 21:20:27 +00:00
Ryan Egesdahl
01dd381f33 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
2020-07-14 23:45:39 +00:00
Daniel Moody
b9f0132fc5 SERVER-49016 added check for icecream version and handle missing cpuinfo 2020-07-10 17:03:54 +00:00
Ryan Egesdahl
c7348f3911 SERVER-48885 Environment variables values with spaces can cause build failures
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.
2020-07-09 20:28:41 +00:00
Andrew Morrow
e072f83477 SERVER-47277 Remove non-hygienic build support 2020-07-08 11:42:42 +00:00
Daniel Moody
5fe923a0aa SERVER-49036 expand response files for generating the compdb from ninja 2020-07-02 21:19:39 +00:00
Andrew Morrow
5394c832f0 SERVER-49141 Ensure that LIBDEPS for libunwind do not accidentally become public 2020-06-29 18:00:54 +00:00
Daniel Moody
21075112a9 SERVER-48966 Added sources to the ninja tool for reinvokation targets, skip Python.Value nodes. 2020-06-25 20:48:48 +00:00
Ryan Egesdahl
1248eaec6e SERVER-48289 Ignore unused compiler flags
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.
2020-05-29 19:09:40 +00:00
Andrew Morrow
463d6ccc4d SERVER-47776 Promote ninja_next.py to ninja.py 2020-05-28 22:19:41 +00:00
Andrew Morrow
a7541c60e5 SERVER-48454 Ignore [UN]CHANGED_[SOURCES|TARGETS] during ninja generation 2020-05-28 17:35:43 +00:00
Andrew Morrow
18cbf0d581 SERVER-48348 Do not sort dwo files in ahead of object files during Ninja generation 2020-05-26 17:03:48 +00:00
Andrew Morrow
c3fc5c001c SERVER-47905 Handle all setup cases in icecream.py correctly 2020-05-04 20:42:40 +00:00
Andrew Morrow
b06280cbd0 SERVER-47904 Python jobs should flow through icerun 2020-05-04 20:42:40 +00:00
Andrew Morrow
765451d392 SERVER-47903 Disable ccache and icecc for conftest jobs 2020-05-04 20:42:40 +00:00
Andrew Morrow
2f4044b526 SERVER-47901 Require ccache when using icecream 1.1 and ninja 2020-05-04 20:42:40 +00:00
Andrew Morrow
e3e70da6c4 SERVER-47865 Fix invalid subst where a variable was passed where a node is required 2020-05-01 17:32:47 +00:00
Andrew Morrow
0b50b48a2b SERVER-47818 Repair test execution aliases in hygienic mode 2020-04-29 02:04:30 +00:00
Andrew Morrow
77162e6d10 SERVER-47637 Relicense all SCons tools to either MIT or SSPL 2020-04-28 02:02:53 +00:00
Andrew Morrow
404e44ce81 SERVER-45785 Simplify implementation of DESTDIR
Also:

- Correctly honor default targets in hygienic mode.
- Fix a latent variable reuse bug in auto_install_pseudobuilder
2020-04-27 22:19:56 +00:00
Andrew Morrow
dc11650712 SERVER-46519 Do not force a global rebuild on ninja regeneration 2020-04-27 21:02:45 +00:00
Andrew Morrow
de6e9c18e3 SERVER-47721 Make generated ninja file deterministic 2020-04-27 21:02:45 +00:00
Andrew Morrow
4ccd6ac3af SERVER-47110 Don't emit the PDB file twice when separate debug is enabled 2020-04-27 17:19:39 +00:00
Andrew Morrow
86bfdfc4e6 SERVER-46611 Don't allow build.ninja to depend on conftests 2020-04-23 17:47:44 +00:00
Andrew Morrow
463cc81552 SERVER-47399 Use File Nodes to manage dSYM substructure 2020-04-17 21:22:51 +00:00
Andrew Morrow
cfa89fbaf0 SERVER-46744 Install unit test debug info without increasing disk utilization 2020-04-17 17:46:01 +00:00
Billy Donahue
157f1221f6 SERVER-46763 structure the VersionInfoInterface tuples 2020-03-10 21:57:42 +00:00
Mathew Robinson
727fe1181c SERVER-46129 Fix various DAG inconsistencies
Some dependencies were getting wired when they should not or were
false dependencies.
2020-03-06 11:38:44 +00:00
Mathew Robinson
029fde8ecf Revert "SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like regular SCons expansions"
This reverts commit e41686f545.
2020-03-05 22:17:39 +00:00
Mathew Robinson
e41686f545 SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like regular SCons expansions 2020-03-05 18:18:39 +00:00
Mathew Robinson
15f7654d79 SERVER-46129 Correct function variable naming 2020-02-28 19:04:39 +00:00
Mathew Robinson
abcbc1ea9d SERVER-46129 Ignore things that aren't builders when hooking into emitters for the ninja file 2020-02-27 16:47:42 +00:00
Ben Caimano
3aea7a5bc1 Revert "SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like regular SCons expansions"
This reverts commit eae0b5ee0d.
2020-02-24 22:37:41 +00:00
Andrew Morrow
59454c2b2c SERVER-46210 Ensure archives of dynamic builds include all required dependencies 2020-02-24 21:33:46 +00:00
Mathew Robinson
551ae2747b SERVER-40943 Define a variables file to build with brew llvm and the remote v3 clang 2020-02-24 19:53:44 +00:00
Mathew Robinson
eae0b5ee0d SERVER-45785 Make PREFIX, PREFIX_*DIR, and DESTDIR work more like regular SCons expansions 2020-02-24 19:41:01 +00:00
Mathew Robinson
60aed37d90 SERVER-46129 Make ninja faster and contain all targets all the time 2020-02-22 02:23:40 +00:00
Mathew Robinson
0e079be3b4 SERVER-40943 Support fetching icecream toolchain tarballs from URLs in SCons 2020-02-21 20:41:38 +00:00
Mathew Robinson
9791eb19d2 SERVER-46096 Add NINJA_PREFIX 2020-02-21 19:34:45 +00:00
Mathew Robinson
dbba9fcb5c SERVER-46282 Do A/B releases of Ninja 2020-02-21 19:08:36 +00:00