Skip to content

Commit ed4c153

Browse files
Add a 32-bit windows buildvariant
1 parent 5115fa7 commit ed4c153

File tree

1 file changed

+88
-111
lines changed

1 file changed

+88
-111
lines changed

.mci.yml

Lines changed: 88 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,11 @@ cxx_driver_variables:
4343
mongo_url_prefix: "http://downloads.mongodb.com/linux/mongodb-linux-x86_64-"
4444
mongo_url_platform: "ubuntu1404-"
4545
windows64-bitcomm: &mongo_url_windows64
46-
mongo_url_extension: "zip"
4746
mongo_url_prefix: "http://downloads.mongodb.com/win32/mongodb-win32-x86_64-"
4847
mongo_url_platform: "windows-64-"
48+
windows32: &mongo_url_windows32
49+
mongo_url_prefix: "http://downloads.mongodb.org/win32/mongodb-win32-i386-"
50+
mongo_url_enterprise_keyword: ""
4951
rhel55: &mongo_url_rhel55
5052
mongo_url_prefix: "http://downloads.mongodb.com/linux/mongodb-linux-x86_64-"
5153
mongo_url_platform: "rhel57-"
@@ -74,71 +76,15 @@ cxx_driver_variables:
7476
scons_flags: "--64 -j$(grep -c ^processor /proc/cpuinfo) --ssl --use-sasl-client --dynamic-windows"
7577
dynamic_windows: &scons_flags_64_windows_dynamic
7678
scons_flags: "--64 -j$(grep -c ^processor /proc/cpuinfo) --ssl --use-sasl-client --dynamic-windows --sharedclient"
79+
32bit_windows: &scons_flags_32_windows_dynamic
80+
scons_flags: "--32 -j$(grep -c ^processor /proc/cpuinfo) --dynamic-windows --sharedclient"
7781

78-
## Common compile flags
82+
## Special compile flags
7983
compile_flags:
80-
basic: &compile_flags
81-
compile_flags: ""
8284
debug: &compile_flags_debug
8385
compile_flags: "--dbg=on"
8486

85-
## Paths for Windows builds
86-
windows_paths:
87-
## DLL paths
88-
dll:
89-
dll_msvc2010: &dllpath_msvc2010
90-
dllpath: --runtime-library-search-path="c:\local\boost_1_55_0\lib64-msvc-10.0,c:\openssl\bin,c:\sasl\bin,c:\curl\dlls"
91-
dll_mscv2013: &dllpath_msvc2013
92-
dllpath: --runtime-library-search-path="c:\local\boost_1_56_0\lib64-msvc-12.0,c:\openssl\bin,c:\sasl\bin,c:\curl\dlls"
93-
## C++ paths
94-
cpp:
95-
cpp_boost_1_55_0: &cpppath_boost_1_55_0
96-
cpppath: --cpppath="c:\local\boost_1_55_0"
97-
cpp_boost_1_56_0: &cpppath_boost_1_56_0
98-
cpppath: --cpppath="c:\local\boost_1_56_0"
99-
## Extras
100-
extra:
101-
basic_extras: &extrapath
102-
extrapath: --extrapath="c:\openssl,c:\sasl,c:\curl"
103-
## Library paths
104-
lib:
105-
lib_msvc2010: &libpath_msvc2010
106-
libpath: --libpath="c:\local\boost_1_55_0\lib64-msvc-10.0"
107-
lib_msvc2013: &libpath_msvc2013
108-
libpath: --libpath="c:\local\boost_1_56_0\lib64-msvc-12.0"
109-
110-
## Toolchain options for windows
111-
windows_toolchains:
112-
msvc2010: &toolchain_msvc2010
113-
toolchain_flags: --msvc-version=10.0
114-
msvc2012: &toolchain_msvc2012
115-
toolchain_flags: --msvc-version=11.0
116-
msvc2013: &toolchain_msvc2013
117-
toolchain_flags: --msvc-version=12.0
118-
119-
## Paths for OS X builds
120-
osx_fixups:
121-
scons:
122-
boost_headers: &extrapath_osx_108
123-
extrapath: --extrapath="/opt/local"
124-
125-
## Paths and flags for RHEL 5.5 builds
126-
rhel55_fixups:
127-
scons:
128-
warning_flags: &warning_flags_rhel55
129-
# For some reason GCC on RHEL 5.5 gives lots of warnings from its own headers when using
130-
# visibility attributes.
131-
warning_flags: --disable-warnings-as-errors
132-
cpp:
133-
cpp_boost: &cpppath_rhel55
134-
cpppath: --cpppath="/usr/include/boost141"
135-
lib:
136-
lib32_boost: &libpath_rhel55_32
137-
libpath: --libpath="/usr/lib/boost141"
138-
lib64_boost: &libpath_rhel55_64
139-
libpath: --libpath="/usr/lib64/boost141"
140-
141-
## Scripts that are shared between buildvariants
87+
## Scripts that are shared between buildvariants
14288
scripts:
14389
mongo_orchestration:
14490
windows: &mongo_orchestration_windows
@@ -177,6 +123,61 @@ cxx_driver_variables:
177123
echo "{ \"releases\": { \"default\": \"`pwd`/mongodb/bin\" }, \"last_updated\": \"2014-08-29 20:57:00.000000\" }" > orchestration.config
178124
TMPDIR=/data/db /usr/local/bin/mongo-orchestration -f orchestration.config -e default start
179125
126+
## Other os-specific attributes, grouped by OS
127+
128+
## Misc. for Windows builds
129+
windows_compilers:
130+
## msvc2010
131+
msvc2010: &with_msvc2010
132+
toolchain_flags: --msvc-version=10.0
133+
libpath: --libpath="c:\local\boost_1_55_0\lib64-msvc-10.0"
134+
cpppath: --cpppath="c:\local\boost_1_55_0"
135+
dllpath: --runtime-library-search-path="c:\local\boost_1_55_0\lib64-msvc-10.0,c:\openssl\bin,c:\sasl\bin,c:\curl\dlls"
136+
extrapath: --extrapath="c:\openssl,c:\sasl,c:\curl"
137+
## msvc2013, 32-bit boost headers
138+
msvc2013-32: &with_msvc2010_32bit
139+
toolchain_flags: --msvc-version=10.0
140+
libpath: --libpath="c:\local\boost_1_57_0\lib32-msvc-10.0"
141+
cpppath: --cpppath="c:\local\boost_1_57_0"
142+
dllpath: --runtime-library-search-path="c:\local\boost_1_57_0\lib32-msvc-10.0,c:\curl\dlls"
143+
extrapath: --extrapath="c:\curl"
144+
msvc2013: &with_msvc2013
145+
toolchain_flags: --msvc-version=12.0
146+
libpath: --libpath="c:\local\boost_1_56_0\lib64-msvc-12.0"
147+
cpppath: --cpppath="c:\local\boost_1_56_0"
148+
dllpath: --runtime-library-search-path="c:\local\boost_1_56_0\lib64-msvc-12.0,c:\openssl\bin,c:\sasl\bin,c:\curl\dlls"
149+
extrapath: --extrapath="c:\openssl,c:\sasl,c:\curl"
150+
151+
## all windows buildvariants have these attributes in common
152+
windows_common: &windows_common
153+
mongo_url_extension: "zip"
154+
scons: scons.bat
155+
extension: ".exe"
156+
windows: true
157+
<<: *mongo_orchestration_windows
158+
159+
## Paths for OS X builds
160+
osx_fixups:
161+
scons:
162+
boost_headers: &extrapath_osx_108
163+
extrapath: --extrapath="/opt/local"
164+
165+
## Paths and flags for RHEL 5.5 builds
166+
rhel55_fixups:
167+
scons:
168+
warning_flags: &warning_flags_rhel55
169+
# For some reason GCC on RHEL 5.5 gives lots of warnings from its own headers when using
170+
# visibility attributes.
171+
warning_flags: --disable-warnings-as-errors
172+
cpp:
173+
cpp_boost: &cpppath_rhel55
174+
cpppath: --cpppath="/usr/include/boost141"
175+
lib:
176+
lib32_boost: &libpath_rhel55_32
177+
libpath: --libpath="/usr/lib/boost141"
178+
lib64_boost: &libpath_rhel55_64
179+
libpath: --libpath="/usr/lib64/boost141"
180+
180181
#######################################
181182
# Functions #
182183
#######################################
@@ -336,7 +337,7 @@ tasks:
336337
script: |
337338
set -o errexit
338339
set -o verbose
339-
${scons|scons} ${scons_flags} ${warning_flags} ${compile_flags} ${toolchain_flags} ${extrapath} ${dllpath} ${cpppath} ${libpath} all
340+
${scons|scons} ${scons_flags} ${warning_flags} ${compile_flags} ${toolchain_flags} ${extrapath} ${dllpath} ${cpppath} ${libpath} ${compile_target|all}
340341
- command: shell.exec
341342
params:
342343
working_dir: "mongo-cxx-driver"
@@ -497,7 +498,6 @@ tasks:
497498
- func: "run client tests"
498499

499500

500-
501501
#######################################
502502
# Buildvariants #
503503
#######################################
@@ -513,7 +513,6 @@ buildvariants:
513513
- name: rhel55
514514
display_name: "RHEL 5.5"
515515
expansions:
516-
<<: *compile_flags
517516
<<: *scons_flags_64
518517
<<: *warning_flags_rhel55
519518
<<: *cpppath_rhel55
@@ -529,7 +528,6 @@ buildvariants:
529528
- name: rhel55-32-bit
530529
display_name: "RHEL 5.5 32-bit"
531530
expansions:
532-
<<: *compile_flags
533531
<<: *scons_flags_32
534532
<<: *warning_flags_rhel55
535533
<<: *cpppath_rhel55
@@ -545,7 +543,6 @@ buildvariants:
545543
- name: ubuntu1404
546544
display_name: "Ubuntu1404"
547545
expansions:
548-
<<: *compile_flags
549546
<<: *scons_flags_64
550547
<<: *mongo_url_ubuntu1404
551548
<<: *mongo_orchestration_linux
@@ -566,13 +563,11 @@ buildvariants:
566563
- ubuntu1404-test
567564
tasks: *latest_tests
568565

569-
570566
## Ubuntu 1404 C++11
571567

572568
- name: ubuntu1404-cpp11
573569
display_name: "Ubuntu1404 C++11"
574570
expansions:
575-
<<: *compile_flags
576571
<<: *scons_flags_cpp11
577572
<<: *mongo_url_ubuntu1404
578573
<<: *mongo_orchestration_linux
@@ -589,7 +584,6 @@ buildvariants:
589584
- name: os-x-108
590585
display_name: "OS X 10.8"
591586
expansions:
592-
<<: *compile_flags
593587
<<: *mongo_url_osx_108
594588
<<: *scons_flags_osx_108
595589
<<: *extrapath_osx_108
@@ -602,27 +596,33 @@ buildvariants:
602596
# Windows Buildvariants #
603597
#######################################
604598

599+
## Windows 32-bit (msvc2010)
600+
## dynamic client and RT
601+
602+
- name: windows-32-msvc2010-dyn-dyn
603+
display_name: "Win32(2010) dyn-dyn"
604+
expansions:
605+
<<: *windows_common
606+
<<: *scons_flags_32_windows_dynamic
607+
<<: *mongo_url_windows32
608+
<<: *with_msvc2010_32bit
609+
compile_target: driver build-unit
610+
run_on:
611+
- windows-64-compile
612+
tasks:
613+
- name: "compile"
614+
- name: "unit test"
615+
605616
## Windows 64-bit (msvc2010)
606617
## static client and RT
607618

608619
- name: windows-64-msvc2010-static-static
609620
display_name: "Win64(2010) static-static"
610621
expansions:
611-
windows: true
612-
mongo_url_extension: "zip"
613-
## basic compilation and installation
614-
<<: *compile_flags
622+
<<: *windows_common
615623
<<: *scons_flags_64_windows_static
616-
<<: *toolchain_msvc2010
617624
<<: *mongo_url_windows64
618-
## additional paths for windows builds
619-
<<: *dllpath_msvc2010
620-
<<: *libpath_msvc2010
621-
<<: *extrapath
622-
<<: *cpppath_boost_1_55_0
623-
<<: *mongo_orchestration_windows
624-
extension: ".exe"
625-
scons: scons.bat
625+
<<: *with_msvc2010
626626
run_on:
627627
- windows-64-compile
628628
tasks: *latest_tests
@@ -633,18 +633,11 @@ buildvariants:
633633
- name: windows-64-msvc2010-dbg-dyn-dyn
634634
display_name: "Win64(2010) dbg dyn-dyn"
635635
expansions:
636-
windows: true
636+
<<: *windows_common
637637
<<: *compile_flags_debug
638638
<<: *scons_flags_64_windows_dynamic
639-
<<: *toolchain_msvc2010
640639
<<: *mongo_url_windows64
641-
<<: *dllpath_msvc2010
642-
<<: *libpath_msvc2010
643-
<<: *extrapath
644-
<<: *cpppath_boost_1_55_0
645-
<<: *mongo_orchestration_windows
646-
extension: ".exe"
647-
scons: scons.bat
640+
<<: *with_msvc2010
648641
run_on:
649642
- windows-64-compile
650643
tasks: *latest_tests
@@ -655,18 +648,10 @@ buildvariants:
655648
- name: windows-64-msvc2013-dyn-dyn
656649
display_name: "Win64(2013) dyn-dyn"
657650
expansions:
658-
windows: true
659-
<<: *compile_flags
651+
<<: *windows_common
660652
<<: *scons_flags_64_windows_dynamic
661-
<<: *toolchain_msvc2013
662653
<<: *mongo_url_windows64
663-
<<: *dllpath_msvc2013
664-
<<: *libpath_msvc2013
665-
<<: *extrapath
666-
<<: *cpppath_boost_1_56_0
667-
<<: *mongo_orchestration_windows
668-
extension: ".exe"
669-
scons: scons.bat
654+
<<: *with_msvc2013
670655
run_on:
671656
- windows-64-vs2013-compile
672657
tasks: *latest_tests
@@ -677,18 +662,10 @@ buildvariants:
677662
- name: windows-64-msvc-2013-static-dyn
678663
display_name: "Win64(2013) static-dyn"
679664
expansions:
680-
windows: true
681-
<<: *compile_flags
665+
<<: *windows_common
682666
<<: *scons_flags_64_windows_dynamic_rt
683-
<<: *toolchain_msvc2013
684667
<<: *mongo_url_windows64
685-
<<: *dllpath_msvc2013
686-
<<: *libpath_msvc2013
687-
<<: *extrapath
688-
<<: *cpppath_boost_1_56_0
689-
<<: *mongo_orchestration_windows
690-
extension: ".exe"
691-
scons: scons.bat
668+
<<: *with_msvc2013
692669
run_on:
693670
- windows-64-vs2013-compile
694671
tasks: *latest_tests

0 commit comments

Comments
 (0)