@@ -397,20 +397,21 @@ def download_stage0(self):
397
397
self .program_out_of_date (self .rustc_stamp (), self .date + str (self .stage1_commit ))):
398
398
if os .path .exists (self .bin_root ()):
399
399
shutil .rmtree (self .bin_root ())
400
+ download_stage1 = self .stage1_commit is not None
400
401
tarball_suffix = '.tar.xz' if support_xz () else '.tar.gz'
401
402
filename = "rust-std-{}-{}{}" .format (
402
403
rustc_channel , self .build , tarball_suffix )
403
404
pattern = "rust-std-{}" .format (self .build )
404
- self ._download_stage0_helper (filename , pattern , tarball_suffix )
405
+ self ._download_stage0_helper (filename , pattern , tarball_suffix , download_stage1 )
405
406
filename = "rustc-{}-{}{}" .format (rustc_channel , self .build ,
406
407
tarball_suffix )
407
- self ._download_stage0_helper (filename , "rustc" , tarball_suffix )
408
+ self ._download_stage0_helper (filename , "rustc" , tarball_suffix , download_stage1 )
408
409
filename = "cargo-{}-{}{}" .format (rustc_channel , self .build ,
409
410
tarball_suffix )
410
411
self ._download_stage0_helper (filename , "cargo" , tarball_suffix )
411
412
if self .stage1_commit is not None :
412
413
filename = "rustc-dev-{}-{}{}" .format (rustc_channel , self .build , tarball_suffix )
413
- self ._download_stage0_helper (filename , "rustc-dev" , tarball_suffix )
414
+ self ._download_stage0_helper (filename , "rustc-dev" , tarball_suffix , download_stage1 )
414
415
415
416
self .fix_bin_or_dylib ("{}/bin/rustc" .format (self .bin_root ()))
416
417
self .fix_bin_or_dylib ("{}/bin/rustdoc" .format (self .bin_root ()))
@@ -430,7 +431,7 @@ def download_stage0(self):
430
431
tarball_suffix = '.tar.xz' if support_xz () else '.tar.gz'
431
432
[channel , date ] = rustfmt_channel .split ('-' , 1 )
432
433
filename = "rustfmt-{}-{}{}" .format (channel , self .build , tarball_suffix )
433
- self ._download_stage0_helper (filename , "rustfmt-preview" , tarball_suffix , date )
434
+ self ._download_stage0_helper (filename , "rustfmt-preview" , tarball_suffix , date = date )
434
435
self .fix_bin_or_dylib ("{}/bin/rustfmt" .format (self .bin_root ()))
435
436
self .fix_bin_or_dylib ("{}/bin/cargo-fmt" .format (self .bin_root ()))
436
437
with output (self .rustfmt_stamp ()) as rustfmt_stamp :
@@ -468,21 +469,26 @@ def downloading_llvm(self):
468
469
return opt == "true" \
469
470
or (opt == "if-available" and self .build == "x86_64-unknown-linux-gnu" )
470
471
471
- def _download_stage0_helper (self , filename , pattern , tarball_suffix , date = None ):
472
+ def _download_stage0_helper (
473
+ self , filename , pattern , tarball_suffix , download_stage1 = False , date = None
474
+ ):
472
475
if date is None :
473
- date = self .stage1_commit or self .date
476
+ if download_stage1 :
477
+ date = self .stage1_commit
478
+ else :
479
+ date = self .date
474
480
cache_dst = os .path .join (self .build_dir , "cache" )
475
481
rustc_cache = os .path .join (cache_dst , date )
476
482
if not os .path .exists (rustc_cache ):
477
483
os .makedirs (rustc_cache )
478
484
479
- if self . stage1_commit is not None :
485
+ if download_stage1 :
480
486
url = "https://ci-artifacts.rust-lang.org/rustc-builds/{}" .format (self .stage1_commit )
481
487
else :
482
488
url = "{}/dist/{}" .format (self ._download_url , date )
483
489
tarball = os .path .join (rustc_cache , filename )
484
490
if not os .path .exists (tarball ):
485
- do_verify = self . stage1_commit is None
491
+ do_verify = not download_stage1
486
492
get ("{}/{}" .format (url , filename ), tarball , verbose = self .verbose , do_verify = do_verify )
487
493
unpack (tarball , tarball_suffix , self .bin_root (), match = pattern , verbose = self .verbose )
488
494
0 commit comments