Commit Graph

1290 Commits

Author SHA1 Message Date
Andrew Morrow
21628d6b23 SERVER-28390 Mark targets as Precious during incremental links 2017-03-21 14:01:15 -04:00
Andrew Morrow
39f71f9f17 SERVER-20540 Add an emitter for .dwo generated by -gsplit-dwarf 2017-03-21 14:00:46 -04:00
Andrew Morrow
a1f15dfd78 SERVER-22602 Provide advice when OpenSSL components are not found on macOS 2017-03-15 10:14:08 -04:00
Andrew Morrow
4948241998 SERVER-28133 Don't mix the ODR detector, clang, and libstdc++ 2017-03-14 23:02:10 -04:00
Mathias Stearn
259fed1b72 SERVER-28197 Fix pthread_setname_np check
Without this change, I get the following error and it detects that I don't
have pthread_setname_np.

build/opt/scons/sconf_temp/conftest_49.cpp:2:0: error: "_GNU_SOURCE" redefined [-Werror]
 #define _GNU_SOURCE

<command-line>:0:0: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
2017-03-13 10:40:10 -04:00
Mark Benvenuto
c2c8abc0a6 SERVER-28199 Raise minimum required scons version 2017-03-07 11:14:39 -05:00
Gabriel Russell
4a61e8533c SERVER-28131 don't load dagger tool unless needed 2017-03-02 10:11:41 -05:00
Mathias Stearn
a9cf9dffdc SERVER-28133 --disable-warnings-as-errors should also apply to linker 2017-02-28 11:58:12 -05:00
Andrew Morrow
4052dc6ee8 SERVER-27682 Use variables files to configure toolchains 2017-02-28 07:09:23 -05:00
Andrew Morrow
27026169e7 SERVER-27380 Use response files for long lines, not thin_archive 2017-02-27 21:55:34 -05:00
Gabriel Russell
8a3d841325 SERVER-27564 install dagger tool before running SConscript() on src/ 2017-02-21 12:38:54 -05:00
Andrew Morrow
38c0eb538d SERVER-28004 Add build system support for iOS-related Darwin variants
Use a SCons invocation like the following to attach to the correct SDK
and targeting options.

// macOS native build:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk macosx --show-sdk-path` -mmacosx-version-min=10.10" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk macosx --show-sdk-path` -mmacosx-version-min=10.10" CC=`xcrun -f --sdk macosx clang` CXX=`xcrun -f --sdk macosx clang++`all

// iOS Cross:
> python buildscripts/scons.py CCFLAGS="-arch arm64 -isysroot `xcrun --sdk iphoneos --show-sdk-path` -miphoneos-version-min=10.2" LINKFLAGS="-arch arm64 -Wl,-syslibroot,`xcrun --sdk iphoneos --show-sdk-path` -miphoneos-version-min=10.2" CC=`xcrun -f --sdk iphoneos clang` CXX=`xcrun -f --sdk iphoneos clang++` TARGET_OS=iOS TARGET_ARCH=aarch64 all

// iOS Simulator Cross:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk iphonesimulator --show-sdk-path` -miphoneos-version-min=10.2" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk iphonesimulator --show-sdk-path` -miphoneos-version-min=10.2" CC=`xcrun -f --sdk iphonesimulator clang` CXX=`xcrun -f --sdk iphonesimulator clang++` TARGET_OS=iOS-sim all

// tvOS Cross:
> python buildscripts/scons.py CCFLAGS="-arch arm64 -isysroot `xcrun --sdk appletvos --show-sdk-path` -mtvos-version-min=10.1" LINKFLAGS="-arch arm64 -Wl,-syslibroot,`xcrun --sdk appletvos --show-sdk-path` -mtvos-version-min=10.1" CC=`xcrun -f --sdk appletvos clang` CXX=`xcrun -f --sdk appletvos clang++` TARGET_OS=tvOS TARGET_ARCH=aarch64 all

// tvOS Simulator Cross:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk appletvsimulator --show-sdk-path` -mtvos-version-min=10.1" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk appletvsimulator --show-sdk-path` -mtvos-version-min=10.1" CC=`xcrun -f --sdk appletvsimulator clang` CXX=`xcrun -f --sdk appletvsimulator clang++` TARGET_OS=tvOS-sim

To run the resulting binaries under the simulator, boot a particular
target machine with 'xcrun simctl':

> xcrun simctl boot 'Apple TV 1080p'

Find the ID of the instance that was booted:

> xcrun simctl list | grep 'Apple TV 1080p'

And then spawn the intended binary inside the simulator with that ID:

> xcrun simctl spawn CEEC6346-6D21-4092-A091-E5A3862A357F build/opt/mongo/mongod --dbpath=tmp
2017-02-15 18:40:45 -05:00
Mark Benvenuto
d2f8e7b928 SERVER-27898 pthread_setname_np test should be compiled as cpp 2017-02-07 11:15:26 -05:00
Andrew Morrow
f29598f2b8 SERVER-27378 Narrow scope of enterprise module environment modifications 2017-02-05 16:42:14 -05:00
ADAM David Alan Martin
e3a32afe3b SERVER-27757 Disable incomplete tag in SCons
The `incomplete` tag should be used nowhere else in the codebase,
and thus we can finally disable it.
2017-02-01 15:30:47 -05:00
ADAM David Alan Martin
eb71198dbd SERVER-27709 Remove cycles & change incomplete tag
Allow `incomplete` for the time being to prevent breaking code in
enterprise.  The cycle/incomplete exemption has been renamed to
`illegal_cyclic_or_unresolved_dependencies_whitelisted`, to discourage
overuse.  Removed the incompletes that we can.
2017-01-17 14:44:05 -05:00
Andrew Morrow
ceb00c4897 SERVER-27566 Always randomize the build order 2017-01-03 22:36:36 -05:00
Andrew Morrow
1346352ff6 SERVER-27497 Scope SCons Environment changes narrowly 2017-01-03 09:45:52 -05:00
Mark Benvenuto
32635c99ec SERVER-26699 Enable MSVC flags for C++ standards alignment 2016-12-22 11:28:02 -05:00
Matt Cotter
d6a2348599 SERVER-26698 switch all compiles to C++14
Enjoy the C++14! 😀 ❤️ thank you!
2016-12-15 17:07:30 -05:00
Andrew Morrow
f371d09cd3 SERVER-27377 Executables need --no-as-needed too 2016-12-12 14:29:38 -05:00
Mark Benvenuto
37cbe92c62 SERVER-27279 pthread_setname_np is not supported on SUSE 11.4 2016-12-06 10:46:33 -05:00
Andrew Morrow
df58fb13b7 SERVER-27229 Don't do ODR detection with UBSAN 2016-11-30 17:31:53 -05:00
Andrew Morrow
075b474c44 SERVER-10576 Use gold ODR violation detection if available 2016-11-29 17:30:04 -05:00
Andrew Morrow
8f1e9cb99d Revert "Revert "SERVER-27075 Link with hash-style=gnu when available""
This reverts commit 0edb03f021.
2016-11-29 13:35:53 -05:00
Dianna Hohensee
0edb03f021 Revert "SERVER-27075 Link with hash-style=gnu when available"
This reverts commit 1834a0f842.
2016-11-29 13:03:55 -05:00
Andrew Morrow
1834a0f842 SERVER-27075 Link with hash-style=gnu when available 2016-11-29 10:29:46 -05:00
Brian Samek
99f1f23edb SERVER-17368 Add openssl files to windows zip file 2016-11-22 16:10:42 -05:00
Mark Benvenuto
dded0e36b1 SERVER-25771 Set BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS to support valgrind 2016-11-17 11:00:34 -05:00
Mathias Stearn
b0885dbb66 SERVER-25679 Fix compile with clang-3.9 2016-11-03 15:16:50 -04:00
Mark Benvenuto
27de917081 SERVER-3993 Windows File Version stamping 2016-11-03 09:15:24 -04:00
Mark Benvenuto
5077c3a691 SERVER-26727 make_vcxproj.py - add support for .filters and improve performance 2016-10-26 15:18:01 -04:00
Andrew Morrow
53cd93fb9b SERVER-26473 Implement the git based decider 2016-10-21 13:50:22 -04:00
Andrew Morrow
f6e1dfb144 SERVER-26472 Allow fast and loose to be combined with the cache if explicitly requested 2016-10-20 16:55:43 -04:00
Matt Cotter
7b58433eec SERVER-22992 waiting on forked process also waits on consuming output 2016-10-12 14:29:59 -04:00
Andrew Morrow
bdb8bfe3b5 SERVER-26276 Enable thin static linking on binutils platforms 2016-10-10 16:38:53 -04:00
samantharitter
956103c27c SERVER-26338 Only load dependencyDb in scons on supported platforms 2016-10-07 10:11:16 -04:00
Gabriel Russell
6970945d92 SERVER-26376 add mongoreplay to release 2016-10-03 13:16:22 -04:00
Andrew Morrow
613cd2c422 SERVER-26311 Enable stack protection for clang builds 2016-09-26 12:32:16 -04:00
Andrew Morrow
710eea36a1 SERVER-26058 Remove obsolete UBSAN check suppression 2016-09-12 17:04:27 -04:00
Mark Benvenuto
3f7812c99d SERVER-25853 SLES 11 kernel does not support s390x VX instructions 2016-08-29 17:53:17 -04:00
Mathias Stearn
255be3b6d6 SERVER-24291 Add libdl to LIBS when using gcc sanitizers 2016-08-29 15:34:16 -04:00
Andrew Morrow
d25e46c8f1 SERVER-25608 Add a SCons target and config vars for cache pruning 2016-08-17 13:29:55 -04:00
Andrew Morrow
dacf1667d1 SERVER-25402 Fewer binaries depend on interpolated version info 2016-08-15 18:36:28 -04:00
Andrew Morrow
bd66e1bdbc SERVER-25402 Add an option to not cache linked artifacts 2016-08-13 13:12:32 -04:00
Sam Kleinman
6adf7407a8 SERVER-25528: allow cache in release builds 2016-08-12 16:20:57 -04:00
Spencer Jackson
045a53f469 SERVER-22826 Support X509 Authorization 2016-08-11 18:58:27 -04:00
Juggls
3a25e6f73c SERVER-24838: add scons tool for capturing dependency graph 2016-07-29 13:43:09 -04:00
Mark Benvenuto
ee4038aebd SERVER-24608 Add Windows performance counter collector 2016-07-26 10:43:13 -04:00
Andrew Morrow
883870b4d2 SERVER-25214 Use C11 to compile C language files 2016-07-25 22:26:31 -04:00