Skip to content
This repository was archived by the owner on Nov 21, 2018. It is now read-only.

Commit 93b13da

Browse files
committed
Merge pull request #13 from rust-lang/msvc
Add initial MSVC bot configuration
2 parents 2c8a83a + f235663 commit 93b13da

File tree

1 file changed

+52
-26
lines changed

1 file changed

+52
-26
lines changed

master/master.cfg

Lines changed: 52 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -126,23 +126,24 @@ auto_platforms_prod = [
126126

127127
"linux-64-x-android-t",
128128

129-
"win-32-opt",
130-
#"win-32-nopt-c",
131-
"win-32-nopt-t",
132-
"win-64-opt",
133-
#"win-64-nopt-c",
134-
"win-64-nopt-t",
129+
"win-gnu-32-opt",
130+
#"win-gnu-32-nopt-c",
131+
"win-gnu-32-nopt-t",
132+
"win-gnu-64-opt",
133+
#"win-gnu-64-nopt-c",
134+
"win-gnu-64-nopt-t",
135+
"win-msvc-64-opt",
135136

136137
# Tier 2 platforms, also modify nogate_builders
137138
"bsd-64-opt",
138139
"bitrig-64-opt",
139140
"linux-musl-64-opt",
140141
]
141142

142-
try_platforms_prod = ["linux", "win-32", "win-64", "bsd", "mac"]
143-
snap_platforms_prod = ["linux", "win-32", "win-64", "bsd", "mac", "bitrig-64"]
144-
dist_platforms_prod = ["linux", "win-32", "win-64", "mac"]
145-
cargo_platforms_prod = ["linux-32", "linux-64", "mac-32", "mac-64", "win-32", "win-64"]
143+
try_platforms_prod = ["linux", "win-gnu-32", "win-gnu-64", "bsd", "mac"]
144+
snap_platforms_prod = ["linux", "win-gnu-32", "win-gnu-64", "bsd", "mac", "bitrig-64"]
145+
dist_platforms_prod = ["linux", "win-gnu-32", "win-gnu-64", "mac"]
146+
cargo_platforms_prod = ["linux-32", "linux-64", "mac-32", "mac-64", "win-gnu-32", "win-gnu-64"]
146147

147148
# Development configuration
148149
auto_platforms_dev = [
@@ -153,20 +154,21 @@ auto_platforms_dev = [
153154

154155
"linux-64-x-android-t",
155156

156-
"win-32-opt",
157-
"win-32-nopt-t",
158-
"win-64-opt",
159-
"win-64-nopt-t",
157+
"win-gnu-32-opt",
158+
"win-gnu-32-nopt-t",
159+
"win-gnu-64-opt",
160+
"win-gnu-64-nopt-t",
161+
"win-msvc-64-opt",
160162

161163
"bsd-64-opt",
162164
"bitrig-64-opt",
163165
"linux-musl-64-opt",
164166
]
165167

166-
try_platforms_dev = ["linux", "win-32", "win-64", "bsd"]
167-
snap_platforms_dev = ["linux", "win-32", "win-64", "bsd", "bitrig-64"]
168-
dist_platforms_dev = ["linux", "win-32", "win-64"]
169-
cargo_platforms_dev = ["linux-32", "linux-64", "win-32", "win-64"]
168+
try_platforms_dev = ["linux", "win-gnu-32", "win-gnu-64", "bsd"]
169+
snap_platforms_dev = ["linux", "win-gnu-32", "win-gnu-64", "bsd", "bitrig-64"]
170+
dist_platforms_dev = ["linux", "win-gnu-32", "win-gnu-64"]
171+
cargo_platforms_dev = ["linux-32", "linux-64", "win-gnu-32", "win-gnu-64"]
170172

171173
if env == "prod":
172174
auto_platforms = auto_platforms_prod
@@ -184,7 +186,12 @@ else:
184186

185187

186188
# auto-platforms that won't cause other's to fail (these don't gate bors)
187-
nogate_builders = ["auto-bsd-64-opt", "auto-bitrig-64-opt", "auto-linux-musl-64-opt"]
189+
nogate_builders = [
190+
"auto-bsd-64-opt",
191+
"auto-bitrig-64-opt",
192+
"auto-linux-musl-64-opt",
193+
"auto-win-msvc-64-opt",
194+
]
188195

189196

190197
####### BUILDSLAVES
@@ -200,10 +207,14 @@ def all_platform_hosts(platform):
200207
return ["i686-unknown-linux-gnu", "x86_64-unknown-linux-gnu"]
201208
elif "bsd" in platform:
202209
return ["x86_64-unknown-freebsd"]
203-
elif "win-32" in platform:
210+
elif "win-gnu-32" in platform:
204211
return ["i686-pc-windows-gnu"]
205-
elif "win-64" in platform:
212+
elif "win-gnu-64" in platform:
206213
return ["x86_64-pc-windows-gnu"]
214+
elif "win-msvc-32" in platform:
215+
return ["i686-pc-windows-msvc"]
216+
elif "win-msvc-64" in platform:
217+
return ["x86_64-pc-windows-msvc"]
207218
elif "bitrig-64" in platform:
208219
return ["x86_64-unknown-bitrig"]
209220
else:
@@ -212,6 +223,10 @@ def all_platform_hosts(platform):
212223
def auto_platform_host(p):
213224
if "-all" in p:
214225
return "all"
226+
# We are temporarily bootstrapping the MSVC build off a GNU build
227+
elif "msvc" in p:
228+
gnu = p.replace("msvc", "gnu")
229+
return [auto_platform_triple(p), auto_platform_triple(gnu)]
215230
else:
216231
return [auto_platform_triple(p)]
217232

@@ -238,17 +253,21 @@ def auto_platform_triple(p):
238253
return "x86_64-unknown-linux-gnu"
239254

240255
if "win" in p:
256+
env = "gnu" if "gnu" in p else "msvc"
241257
if "-32" in p:
242-
return "i686-pc-windows-gnu"
258+
return "i686-pc-windows-" + env
243259
else:
244-
return "x86_64-pc-windows-gnu"
260+
return "x86_64-pc-windows-" + env
245261

246262
if "bsd" in p:
247263
return "x86_64-unknown-freebsd"
248264

249265
if "bitrig-64" in p:
250266
return "x86_64-unknown-bitrig"
251267

268+
def auto_platform_build(p):
269+
return auto_platform_triple(p.replace("msvc", "gnu"))
270+
252271

253272
####### BUILDSLAVES
254273

@@ -635,15 +654,20 @@ class CommandEnv(object):
635654
# This is required to trigger certain workarounds done
636655
# slave-side by buildbot. In particular omitting the PWD
637656
# variable with an unmangled pathname.
638-
if "win-32" in props["buildername"]:
657+
if "win-gnu-32" in props["buildername"]:
639658
env["MACHTYPE"] = "i686-pc-msys"
640659
env["MSYSTEM"] = "MINGW32"
641660
env["PATH"] = win32toolchain + ";c:\\msys64\\usr\\bin;${PATH};c:\\msys64\\mingw32\\bin"
642-
if "win-64" in props["buildername"]:
661+
if "win-gnu-64" in props["buildername"]:
643662
env["MACHTYPE"] = "x86_64-pc-msys"
644663
env["MSYSTEM"] = "MINGW64"
645664
env["PATH"] = win64toolchain + ";c:\\msys64\\usr\\bin;${PATH};c:\\msys64\\mingw64\\bin"
646665

666+
if "win-msvc-64" in props["buildername"]:
667+
env["MACHTYPE"] = "x86_64-pc-win32"
668+
env["MSYSTEM"] = "MINGW64"
669+
env["PATH"] = win64toolchain + ";c:\\msys64\\mingw64\\bin;c:\\msys64\\usr\\bin;${PATH}"
670+
647671
if "valgrind" in props and props["valgrind"] == True:
648672
env["RUST_THREADS"]="1"
649673
env["RUST_RT_TEST_THREADS"]="1"
@@ -1436,6 +1460,8 @@ for p in auto_platforms:
14361460
if "musl" in p:
14371461
chk = "check-stage2-T-x86_64-unknown-linux-musl-H-x86_64-unknown-linux-gnu"
14381462
musl = True
1463+
if "msvc" in p:
1464+
chk = False
14391465
if not opt_compiler:
14401466
chk = False
14411467

@@ -1461,7 +1487,7 @@ for p in auto_platforms:
14611487
"optimize-tests": opt_tests,
14621488
"android": android,
14631489
"musl": musl,
1464-
"build": auto_platform_triple(p),
1490+
"build": auto_platform_build(p),
14651491
"hosts": auto_platform_host(p),
14661492
"targets": auto_platform_target(p),
14671493
"check": chk},

0 commit comments

Comments
 (0)