SERVER-26537 Require clang 3.8, XCode 8.3, MSVC 20125 U3 to build
This commit is contained in:
parent
90c32254af
commit
672ef12fe4
10
SConstruct
10
SConstruct
@ -1716,14 +1716,14 @@ def doConfigure(myenv):
|
||||
# bare compilers, and we should re-check at the very end that TryCompile and TryLink still
|
||||
# work with the flags we have selected.
|
||||
if myenv.ToolchainIs('msvc'):
|
||||
compiler_minimum_string = "Microsoft Visual Studio 2015 Update 2"
|
||||
compiler_minimum_string = "Microsoft Visual Studio 2015 Update 3"
|
||||
compiler_test_body = textwrap.dedent(
|
||||
"""
|
||||
#if !defined(_MSC_VER)
|
||||
#error
|
||||
#endif
|
||||
|
||||
#if _MSC_VER < 1900 || (_MSC_VER == 1900 && _MSC_FULL_VER < 190023918)
|
||||
#if _MSC_VER < 1900 || (_MSC_VER == 1900 && _MSC_FULL_VER < 190024218)
|
||||
#error %s or newer is required to build MongoDB
|
||||
#endif
|
||||
|
||||
@ -1748,7 +1748,7 @@ def doConfigure(myenv):
|
||||
}
|
||||
""" % compiler_minimum_string)
|
||||
elif myenv.ToolchainIs('clang'):
|
||||
compiler_minimum_string = "clang 3.6 (or Apple XCode 6.3.0)"
|
||||
compiler_minimum_string = "clang 3.8 (or Apple XCode 8.3.2)"
|
||||
compiler_test_body = textwrap.dedent(
|
||||
"""
|
||||
#if !defined(__clang__)
|
||||
@ -1756,10 +1756,10 @@ def doConfigure(myenv):
|
||||
#endif
|
||||
|
||||
#if defined(__apple_build_version__)
|
||||
#if __apple_build_version__ < 6020049
|
||||
#if __apple_build_version__ < 8020042
|
||||
#error %s or newer is required to build MongoDB
|
||||
#endif
|
||||
#elif (__clang_major__ < 3) || (__clang_major__ == 3 && __clang_minor__ < 6)
|
||||
#elif (__clang_major__ < 3) || (__clang_major__ == 3 && __clang_minor__ < 8)
|
||||
#error %s or newer is required to build MongoDB
|
||||
#endif
|
||||
|
||||
|
||||
@ -5,8 +5,8 @@ To build MongoDB, you will need:
|
||||
|
||||
* A modern C++ compiler. One of the following is required.
|
||||
* GCC 5.4.0 or newer
|
||||
* Clang 3.7 (or Apple XCode 7.0.2 Clang) or newer
|
||||
* Visual Studio 2015 Update 2 or newer (See Windows section below for details)
|
||||
* Clang 3.8 (or Apple XCode 8.3.2 Clang) or newer
|
||||
* Visual Studio 2015 Update 3 or newer (See Windows section below for details)
|
||||
* Python 2.7.x and Pip modules:
|
||||
* pyyaml
|
||||
* typing
|
||||
@ -71,9 +71,9 @@ Build requirements:
|
||||
* Visual Studio 2015 Update 2 or newer
|
||||
* Python 2.7, ActiveState ActivePython 2.7.x Community Edition for Windows is recommended
|
||||
|
||||
If using VS 2015 Update 3, a hotfix is required to build the unit tests. See
|
||||
https://support.microsoft.com/en-us/help/3207317/visual-c-optimizer-fixes-for-visual-studio-2015-update-3
|
||||
for details.
|
||||
If using VS 2015 Update 3, two hotfixes are required to build. For details, see:
|
||||
* https://support.microsoft.com/en-us/help/3207317/visual-c-optimizer-fixes-for-visual-studio-2015-update-3
|
||||
* https://support.microsoft.com/en-za/help/4020481/fix-link-exe-crashes-with-a-fatal-lnk1000-error-when-you-use-wholearch
|
||||
|
||||
Or download a prebuilt binary for Windows at www.mongodb.org.
|
||||
|
||||
|
||||
@ -1362,7 +1362,7 @@ tasks:
|
||||
|
||||
rm -rf ${install_directory|/data/mongo-install-directory}
|
||||
|
||||
${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} ${scons_cache_args|} --use-new-tools --build-mongoreplay="${build_mongoreplay}" core tools dbtest integration_tests dist dist-debugsymbols distsrc-${ext|tgz} ${msi_target|} MONGO_VERSION=${version}
|
||||
${compile_env|} ${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} ${scons_cache_args|} --use-new-tools --build-mongoreplay="${build_mongoreplay}" core tools dbtest integration_tests dist dist-debugsymbols distsrc-${ext|tgz} ${msi_target|} MONGO_VERSION=${version}
|
||||
|
||||
mv mongodb-src-*.${ext|tgz} distsrc.${ext|tgz}
|
||||
mv mongodb-*-debugsymbols.${ext|tgz} mongo-debugsymbols.tgz || true
|
||||
@ -1505,7 +1505,7 @@ tasks:
|
||||
|
||||
rm -rf ${install_directory|/data/mongo-install-directory}
|
||||
|
||||
${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} ${scons_cache_args|} --use-new-tools --build-mongoreplay="${build_mongoreplay}" all ${additional_targets|} MONGO_VERSION=${version}
|
||||
${compile_env|} ${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} ${scons_cache_args|} --use-new-tools --build-mongoreplay="${build_mongoreplay}" all ${additional_targets|} MONGO_VERSION=${version}
|
||||
|
||||
- command: s3.put
|
||||
params:
|
||||
@ -1540,7 +1540,7 @@ tasks:
|
||||
set -o errexit
|
||||
set -o verbose
|
||||
|
||||
${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} --stack-size=1024 lint
|
||||
${compile_env|} ${python|/opt/mongodbtoolchain/v2/bin/python2} ./buildscripts/scons.py ${compile_flags|} --stack-size=1024 lint
|
||||
|
||||
- <<: *task_template
|
||||
name: burn_in_tests
|
||||
@ -5475,6 +5475,7 @@ buildvariants:
|
||||
push_arch: x86_64
|
||||
tooltags: "-tags ssl"
|
||||
gorootvars: CGO_CPPFLAGS=-I/opt/mongodbtoolchain/v2/include CGO_CFLAGS=-mmacosx-version-min=10.10 CGO_LDFLAGS=-mmacosx-version-min=10.10
|
||||
compile_env: DEVELOPER_DIR=/Applications/Xcode8.3.app
|
||||
compile_flags: --ssl --allocator=system -j$(sysctl -n hw.logicalcpu) --release --libc++ CCFLAGS="-mmacosx-version-min=10.10" LINKFLAGS="-mmacosx-version-min=10.10" CPPPATH=/opt/mongodbtoolchain/v2/include
|
||||
python: python2.7
|
||||
num_jobs_available: 1
|
||||
@ -5583,6 +5584,7 @@ buildvariants:
|
||||
push_arch: x86_64
|
||||
num_jobs_available: 1
|
||||
gorootvars: CGO_CFLAGS=-mmacosx-version-min=10.10 CGO_LDFLAGS=-mmacosx-version-min=10.10
|
||||
compile_env: DEVELOPER_DIR=/Applications/Xcode8.3.app
|
||||
compile_flags: --dbg=on --opt=on --allocator=system -j$(sysctl -n hw.logicalcpu) --libc++ CCFLAGS="-mmacosx-version-min=10.10" LINKFLAGS="-mmacosx-version-min=10.10"
|
||||
python: python2.7
|
||||
build_mongoreplay: true
|
||||
@ -5628,6 +5630,7 @@ buildvariants:
|
||||
push_arch: x86_64-enterprise
|
||||
tooltags: "-tags 'ssl sasl'"
|
||||
gorootvars: CGO_CPPFLAGS=-I/opt/mongodbtoolchain/v2/include CGO_CFLAGS=-mmacosx-version-min=10.10 CGO_LDFLAGS=-mmacosx-version-min=10.10
|
||||
compile_env: DEVELOPER_DIR=/Applications/Xcode8.3.app
|
||||
compile_flags: --ssl --allocator=system -j$(sysctl -n hw.logicalcpu) --release --libc++ CCFLAGS="-mmacosx-version-min=10.10" LINKFLAGS="-mmacosx-version-min=10.10" CPPPATH=/opt/mongodbtoolchain/v2/include
|
||||
python: python2.7
|
||||
num_jobs_available: 1
|
||||
@ -6945,8 +6948,8 @@ buildvariants:
|
||||
- name: push
|
||||
|
||||
|
||||
- name: enterprise-ubuntu1604-clang-3.7-libcxx
|
||||
display_name: "! Enterprise Ubuntu 16.04 (Clang 3.7/libc++)"
|
||||
- name: enterprise-ubuntu1604-clang-3.8-libcxx
|
||||
display_name: "! Enterprise Ubuntu 16.04 (Clang 3.8)"
|
||||
modules:
|
||||
- enterprise
|
||||
run_on:
|
||||
@ -6954,7 +6957,7 @@ buildvariants:
|
||||
expansions:
|
||||
gorootvars: GOROOT=/opt/go PATH="/opt/go/bin:$PATH"
|
||||
tooltags: "-tags 'ssl sasl'"
|
||||
compile_flags: --link-model=dynamic --ssl CC=/usr/bin/clang-3.7 CXX=/usr/bin/clang++-3.7 --libc++ -j$(grep -c ^processor /proc/cpuinfo) CPPPATH=/usr/include/libcxxabi/
|
||||
compile_flags: --link-model=dynamic --ssl CC=/usr/bin/clang-3.8 CXX=/usr/bin/clang++-3.8 -j$(grep -c ^processor /proc/cpuinfo) CPPPATH=/usr/include/libcxxabi/
|
||||
use_scons_cache: true
|
||||
build_mongoreplay: true
|
||||
tasks:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user