diff --git a/.azure-pipelines/auto.fanout.yml b/.azure-pipelines/auto.fanout.yml deleted file mode 100644 index def19a87076..00000000000 --- a/.azure-pipelines/auto.fanout.yml +++ /dev/null @@ -1,521 +0,0 @@ -# -# Azure Pipelines "auto" branch build for Rust on Linux, macOS, and Windows. -# -# Notes: -# To get sccache working, I (John Erickson) had to build it with the Azure feature enabled -# and with openssl statically-linked for Linux. -# Here's the build (with a backpointer to source) of where the bits came from: -# https://dev.azure.com/johnterickson/rust-lang/_build/results?buildId=275 - -name: fanout -pr: none -trigger: -- auto - -variables: -- group: caching - -jobs: -# WINDOWS JOBS -- job: Windows - timeoutInMinutes: 180 - variables: - TAR_COMMAND: tar - pool: - vmImage: 'vs2017-win2016' - steps: - - template: steps/windows.yml - strategy: - matrix: - # 32/64 bit MSVC tests - x86_64-msvc-1: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - SCRIPT: make ci-subset-1 - x86_64-msvc-2: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - SCRIPT: make ci-subset-2 - -- job: Windows_build - timeoutInMinutes: 180 - variables: - TAR_COMMAND: tar - pool: - vmImage: 'vs2017-win2016' - steps: - - template: steps/windows.yml - - script: | - echo on - echo "##vso[task.setvariable variable=TAR_PATH]%TEMP%\drop.tar" - - bash: | - set -x - $TAR_COMMAND --dereference --exclude=.git --exclude=citools $SUBMODULES_EXCLUDES -cf $TEMP/drop.tar . - $TAR_COMMAND --append --file=$TEMP/drop.tar citools - - task: PublishPipelineArtifact@0 - inputs: - artifactName: $(System.JobDisplayName) - targetPath: $(TAR_PATH) - strategy: - matrix: - # 32/64 bit MSVC tests - x86_64-msvc-build: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - SCRIPT: make ci-test-prepare - -- job: Windows_test - dependsOn: Windows_build - timeoutInMinutes: 180 - variables: - TAR_COMMAND: tar - SKIP_PREP: 1 - KEEP_STAGE: '--keep-stage 0 --keep-stage 1' - SKIP_LLVM_BUILD: 1 - pool: - vmImage: 'vs2017-win2016' - steps: - - checkout: self - fetchDepth: 2 - - script: | - set MSYS_PATH=%CD%\citools\msys64 - set PATH=%MSYS_PATH%\usr\bin;%PATH% - where rev - rev --help - where make - echo ##vso[task.prependpath]%MSYS_PATH%\usr\bin - displayName: Install msys2 - - # # If we need to download a custom MinGW, do so here and set the path - # # appropriately. - # # - # # Note that this *also* means that we're not using what is typically - # # /mingw32/bin/python2.7.exe, which is a "correct" python interpreter where - # # /usr/bin/python2.7.exe is not. To ensure we use the right interpreter we - # # move `C:\Python27` ahead in PATH and then also make sure the `python2.7.exe` - # # file exists in there (which it doesn't by default). - # - script: | - # powershell -Command "iwr -outf %MINGW_ARCHIVE% %MINGW_URL%/%MINGW_ARCHIVE%" - # 7z x -y %MINGW_ARCHIVE% > nul - # echo ##vso[task.prependpath]%CD%\%MINGW_DIR%\bin - # condition: and(succeeded(), ne(variables['MINGW_URL'],'')) - # displayName: Download custom MinGW - - # If we're compiling for MSVC then we, like most other distribution builders, - # switch to clang as the compiler. This'll allow us eventually to enable LTO - # amongst LLVM and rustc. Note that we only do this on MSVC as I don't think - # clang has an output mode compatible with MinGW that we need. If it does we - # should switch to clang for MinGW as well! - # - # Note that the LLVM installer is an NSIS installer - # - # Original downloaded here came from - # http://releases.llvm.org/7.0.0/LLVM-7.0.0-win64.exe - - script: | - # powershell -Command "iwr -outf LLVM-7.0.0-win64.exe https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/LLVM-7.0.0-win64.exe" - # .\LLVM-7.0.0-win64.exe /S /NCRC /D=C:\clang-rust - set CLANG_DIR=%CD%\citools\clang-rust - set RUST_CONFIGURE_ARGS=%RUST_CONFIGURE_ARGS% --set llvm.clang-cl=%CLANG_DIR%\bin\clang-cl.exe - echo ##vso[task.setvariable variable=RUST_CONFIGURE_ARGS]%RUST_CONFIGURE_ARGS% - condition: and(succeeded(), eq(variables['MINGW_URL'],'')) - displayName: Download clang - - # # Here we do a pretty heinous thing which is to mangle the MinGW installation - # # we just had above. Currently, as of this writing, we're using MinGW-w64 - # # builds of gcc, and that's currently at 6.3.0. We use 6.3.0 as it appears to - # # be the first version which contains a fix for #40546, builds randomly - # # failing during LLVM due to ar.exe/ranlib.exe failures. - # # - # # Unfortunately, though, 6.3.0 *also* is the first version of MinGW-w64 builds - # # to contain a regression in gdb (#40184). As a result if we were to use the - # # gdb provided (7.11.1) then we would fail all debuginfo tests. - # # - # # In order to fix spurious failures (pretty high priority) we use 6.3.0. To - # # avoid disabling gdb tests we download an *old* version of gdb, specifically - # # that found inside the 6.2.0 distribution. We then overwrite the 6.3.0 gdb - # # with the 6.2.0 gdb to get tests passing. - # # - # # Note that we don't literally overwrite the gdb.exe binary because it appears - # # to just use gdborig.exe, so that's the binary we deal with instead. - # - script: | - # echo ON - # powershell -Command "iwr -outf 2017-04-20-%MSYS_BITS%bit-gdborig.exe %MINGW_URL%/2017-04-20-%MSYS_BITS%bit-gdborig.exe" - # mv 2017-04-20-%MSYS_BITS%bit-gdborig.exe %MINGW_DIR%\bin\gdborig.exe - # condition: and(succeeded(), ne(variables['MINGW_URL'],'')) - # displayName: Override with 6.3.0 gdb with 6.2.0 gdb - - # Otherwise pull in the MinGW installed on appveyor - - script: | - echo Find mingw - set PATH | findstr /i msys - set PATH | findstr /i mingw - echo ##vso[task.prependpath]C:\msys64\mingw%MSYS_BITS%\bin - condition: and(succeeded(), eq(variables['MINGW_URL'],'')) - displayName: Add MinGW to path - - - script: | - copy C:\Python27amd64\python.exe C:\Python27amd64\python2.7.exe - echo ##vso[task.prependpath]C:\Python27amd64 - displayName: Prefer the "native" Python as LLVM has trouble building with MSYS sometimes - - - script: | - REM md sccache - REM powershell -Command "iwr -outf sccache\sccache.exe https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2018-04-26-sccache-x86_64-pc-windows-msvc" - echo ##vso[task.prependpath]%CD%\sccache - displayName: Download and install sccache - - # Note that this is originally from the github releases patch of Ninja - - script: | - REM md ninja - REM powershell -Command "iwr -outf 2017-03-15-ninja-win.zip https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-03-15-ninja-win.zip" - REM 7z x -oninja 2017-03-15-ninja-win.zip - REM del 2017-03-15-ninja-win.zip - set RUST_CONFIGURE_ARGS=%RUST_CONFIGURE_ARGS% --enable-ninja - echo ##vso[task.setvariable variable=RUST_CONFIGURE_ARGS]%RUST_CONFIGURE_ARGS% - echo ##vso[task.prependpath]%CD%\ninja - displayName: Download and install ninja - - - script: | - IF NOT "%DISABLE_DISK_SPACE_HACK%"=="1" ( - IF NOT EXIST build ( - mkdir c:\MORE_SPACE - mklink /J build c:\MORE_SPACE - ) - ) - - script: | - echo on - echo ##vso[task.setvariable variable=TAR_FOLDER_PATH]%TEMP% - - template: steps/show-environment-variables.yml - - task: DownloadPipelineArtifact@1 - inputs: - artifactName: $(ARTIFACT_NAME) - downloadPath: $(TAR_FOLDER_PATH) - # - task: DownloadPipelineArtifact@1 - # inputs: - # artifactName: $(ARTIFACT_NAME) - # downloadPath: $(TAR_FOLDER_PATH) - # buildType: specific - # project: rust - # pipeline: 8 - # buildVersionToDownload: specific - # buildId: 200 - # # https://dev.azure.com/rust-lang-azure/rust/_build/results?buildId=145 - - # - template: steps/macos.yml - - bash: $TAR_COMMAND -tvf $TEMP/drop.tar - - bash: $TAR_COMMAND --touch -xf $TEMP/drop.tar - - bash: rm $TEMP/drop.tar - - script: | - REM mkdir handle - REM powershell -Command "iwr -outf 2017-05-15-Handle.zip https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-05-15-Handle.zip" - REM 7z x -ohandle 2017-05-15-Handle.zip - REM del 2017-05-15-Handle.zip - set PATH=%PATH%;%CD%\handle - handle.exe -accepteula -help - echo ##vso[task.setvariable variable=PATH]%PATH% - displayName: Help debug handle issues - - script: | - REM echo force the specific VS version https://github.com/johnterickson/rust/issues/8 - IF "%VCVARS_BAT%" NEQ "" ( - CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\%VCVARS_BAT%" - ) - - where sccache - where rev - set | findstr /v SCCACHE_AZURE_CONNECTION_STRING - - if not exist D:\cache\rustsrc\NUL mkdir D:\cache\rustsrc - - sh src/ci/run.sh - env: - CI: true - CI_JOB_NAME: $(System.JobDisplayName) - SRC: . - NO_CCACHE: 1 - - # explicitly decrypt secret variables - # see https://docs.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops&tabs=yaml%2Cbatch - SCCACHE_AZURE_CONNECTION_STRING: $(SCCACHE_AZURE_CONNECTION_STRING_SECRET) - DOCKER_LAYER_CACHE_AZURE_STORAGE_ACCOUNT_KEY: $(DOCKER_LAYER_CACHE_AZURE_STORAGE_ACCOUNT_KEY_SECRET) - displayName: Run script - - strategy: - matrix: - # 32/64 bit MSVC tests - x86_64-msvc-A: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-A - x86_64-msvc-B: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-B - x86_64-msvc-C: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-C - x86_64-msvc-D: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-D - x86_64-msvc-E: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-E - x86_64-msvc-F: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-F - x86_64-msvc-G: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-G - x86_64-msvc-H: - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - ARTIFACT_NAME: x86_64-msvc-build - SCRIPT: make ci-resume-subset-H - -# macOS JOBS -- job: macOS - timeoutInMinutes: 180 - variables: - TAR_COMMAND: gtar - pool: - vmImage: macos-10.13 - steps: - - checkout: self - fetchDepth: 2 - - template: steps/macos.yml - strategy: - matrix: - x86_64-apple: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - -- job: macOS_build - timeoutInMinutes: 180 - variables: - TAR_COMMAND: gtar - pool: - vmImage: macos-10.13 - steps: - - checkout: self - fetchDepth: 2 - - template: steps/macos.yml - - script: | - set -x - - git submodule - export SUBMODULES_EXCLUDES=$(git submodule | grep -Eow 'src/[^ ]+' | sed 's/\(.*\)/--exclude=\1\/\.git/') - echo $SUBMODULES_EXCLUDES - - $TAR_COMMAND --exclude=.git $SUBMODULES_EXCLUDES -cf /tmp/drop.tar . - - task: PublishPipelineArtifact@0 - inputs: - artifactName: $(System.JobDisplayName) - targetPath: '/tmp/drop.tar' - - strategy: - matrix: - # macOS builders. These are placed near the beginning because they are very - # slow to run. - - # OSX builders running tests, these run the full test suite. - # NO_DEBUG_ASSERTIONS=1 to make them go faster, but also do have some - # runners that run `//ignore-debug` tests. - # - # Note that the compiler is compiled to target 10.8 here because the Xcode - # version that we're using, 8.2, cannot compile LLVM for OSX 10.7. - x86_64-apple-build: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - SCRIPT: make ci-test-prepare - -- job: macOS_test - dependsOn: macOS_build - timeoutInMinutes: 180 - variables: - TAR_COMMAND: gtar - SKIP_PREP: 1 - KEEP_STAGE: '--keep-stage 0 --keep-stage 1' - SKIP_LLVM_BUILD: 1 - pool: - vmImage: macos-10.13 - steps: - - checkout: self - fetchDepth: 2 - - bash: brew install gnu-tar - displayName: install a tar that works well - - - template: steps/show-disk-usage.yml - - - task: DownloadPipelineArtifact@1 - inputs: - artifactName: $(ARTIFACT_NAME) - downloadPath: $(System.DefaultWorkingDirectory) - # - task: DownloadPipelineArtifact@1 - # inputs: - # artifactName: $(ARTIFACT_NAME) - # downloadPath: $(System.DefaultWorkingDirectory) - # buildType: specific - # project: rust - # pipeline: 8 - # buildVersionToDownload: specific - # buildId: 200 - - # - template: steps/macos.yml - - template: steps/show-disk-usage.yml - - bash: $TAR_COMMAND -tvf ./drop.tar - - bash: $TAR_COMMAND -xf ./drop.tar - - bash: rm ./drop.tar - - template: steps/show-disk-usage.yml - - bash: | - export PATH=$PATH:$HOME/.local/bin:$HOME/Library/Python/2.7/bin/ - mkdir -p $HOME/rustsrc - echo "##vso[task.setvariable variable=PATH;]$PATH" - - curl -fo /usr/local/bin/sccache https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2018-04-02-sccache-x86_64-apple-darwin - chmod +x /usr/local/bin/sccache - - curl -fo /usr/local/bin/stamp https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-03-17-stamp-x86_64-apple-darwin - chmod +x /usr/local/bin/stamp - - export CC=`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang - echo "##vso[task.setvariable variable=CC]$CC" - - export CXX=`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++ - echo "##vso[task.setvariable variable=CXX]$CXX" - - echo "##vso[task.setvariable variable=AR]ar" - displayName: Prep - - - bash: brew install gnu-tar - displayName: install a tar that works well - - - bash: | - brew update - brew install xz - brew install swig - condition: and(succeeded(), eq(variables['RUST_CHECK_TARGET'],'dist')) - displayName: Install xz and swigw - - - bash: | - export RUN_SCRIPT="src/ci/run.sh" - echo "##vso[task.setvariable variable=RUN_SCRIPT]$RUN_SCRIPT" - displayName: Prepare run script (init and run) - - - template: steps/show-environment-variables.yml - - - template: steps/verify-publish-toolstate.yml - - - template: steps/run-script.yml - - strategy: - matrix: - # macOS builders. These are placed near the beginning because they are very - # slow to run. - - # OSX builders running tests, these run the full test suite. - # NO_DEBUG_ASSERTIONS=1 to make them go faster, but also do have some - # runners that run `//ignore-debug` tests. - # - # Note that the compiler is compiled to target 10.8 here because the Xcode - # version that we're using, 8.2, cannot compile LLVM for OSX 10.7. - x86_64-apple-A: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-A - x86_64-apple-B: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-B - x86_64-apple-C: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-C - x86_64-apple-D: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-D - x86_64-apple-E: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-E - x86_64-apple-F: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-F - x86_64-apple-G: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-G - x86_64-apple-H: - RUST_CHECK_TARGET: check - RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.8 - MACOSX_STD_DEPLOYMENT_TARGET: 10.7 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - ARTIFACT_NAME: x86_64-apple-build - SCRIPT: make ci-resume-subset-H diff --git a/.azure-pipelines/auto.yml b/.azure-pipelines/auto.yml index 189536cff5f..facc592422b 100644 --- a/.azure-pipelines/auto.yml +++ b/.azure-pipelines/auto.yml @@ -3,8 +3,8 @@ # pr: none -# trigger: -# - auto + trigger: + - auto variables: - group: caching diff --git a/src/bootstrap/README.md b/src/bootstrap/README.md index c47c0f765f0..1e01d68fb3a 100644 --- a/src/bootstrap/README.md +++ b/src/bootstrap/README.md @@ -39,7 +39,8 @@ The script accepts commands, flags, and arguments to determine what to do: ``` If files are dirty that would normally be rebuilt from stage 0, that can be - overridden using `--keep-stage 0`. + overridden using `--keep-stage 0`. Using `--keep-stage n` will skip all steps + that belong to stage n or earlier: ``` # keep old build products for stage 0 and build stage 1 diff --git a/src/bootstrap/mk/Makefile.in b/src/bootstrap/mk/Makefile.in index 29b0cdaef63..ea05b30ecef 100644 --- a/src/bootstrap/mk/Makefile.in +++ b/src/bootstrap/mk/Makefile.in @@ -14,10 +14,9 @@ endif BOOTSTRAP := $(CFG_PYTHON) $(CFG_SRC_DIR)src/bootstrap/bootstrap.py -build: +all: $(Q)$(BOOTSTRAP) build $(BOOTSTRAP_ARGS) - -all: build doc + $(Q)$(BOOTSTRAP) doc $(BOOTSTRAP_ARGS) help: $(Q)echo 'Welcome to the rustbuild build system!' @@ -81,75 +80,10 @@ TESTS_IN_2 := \ src/test/run-pass-fulldeps \ src/tools/linkchecker -MIN_TEST := \ - src/test/debuginfo - ci-subset-1: $(Q)$(BOOTSTRAP) test $(TESTS_IN_2:%=--exclude %) ci-subset-2: $(Q)$(BOOTSTRAP) test $(TESTS_IN_2) -ci-test-prepare: - $(Q)$(BOOTSTRAP) test $(MIN_TEST) - -ci-resume-subset-1: - $(Q)$(BOOTSTRAP) test $(TESTS_IN_2:%=--exclude %) -ci-resume-subset-2: - $(Q)$(BOOTSTRAP) test $(TESTS_IN_2) - -TESTS_IN_B := \ - src/tools/linkchecker - -TESTS_IN_C := \ - src/test/run-pass \ - src/test/run-pass-fulldeps - -TESTS_IN_D := \ - src/test/compile-fail \ - src/test/rustdoc \ - src/test/pretty - -TESTS_IN_E := \ - src/test/ui - -TESTS_IN_F := \ - src/test/run-fail \ - src/liballoc \ - src/libcore - -TESTS_IN_G := \ - src/tools/rustdoc \ - src/test/rustdoc-js-std \ - src/test/run-make-fulldeps \ - src/libstd - -TESTS_IN_H := \ - src/librustc_driver - -ci-resume-subset-A: - $(Q)$(BOOTSTRAP) test \ - $(KEEP_STAGE) \ - $(TESTS_IN_B:%=--exclude %) \ - $(TESTS_IN_C:%=--exclude %) \ - $(TESTS_IN_D:%=--exclude %) \ - $(TESTS_IN_E:%=--exclude %) \ - $(TESTS_IN_F:%=--exclude %) \ - $(TESTS_IN_G:%=--exclude %) \ - $(TESTS_IN_H:%=--exclude %) \ - $(MIN_TEST:%=--exclude %) -ci-resume-subset-B: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_B) -ci-resume-subset-C: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_C) -ci-resume-subset-D: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_D) -ci-resume-subset-E: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_E) -ci-resume-subset-F: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_F) -ci-resume-subset-G: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_G) -ci-resume-subset-H: - $(Q)$(BOOTSTRAP) test $(KEEP_STAGE) $(TESTS_IN_H) .PHONY: dist diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs index 62a8b7aad03..5777331b9bf 100644 --- a/src/bootstrap/native.rs +++ b/src/bootstrap/native.rs @@ -81,13 +81,6 @@ impl Step for Llvm { (info, "src/llvm-project/llvm", builder.llvm_out(target), dir.join("bin")) }; - let build_llvm_config = llvm_config_ret_dir - .join(exe("llvm-config", &*builder.config.build)); - - if env::var_os("SKIP_LLVM_BUILD").is_some() { - return build_llvm_config - } - if !llvm_info.is_git() { println!( "git could not determine the LLVM submodule commit hash. \ @@ -95,6 +88,8 @@ impl Step for Llvm { ); } + let build_llvm_config = llvm_config_ret_dir + .join(exe("llvm-config", &*builder.config.build)); let done_stamp = out_dir.join("llvm-finished-building"); if let Some(llvm_commit) = llvm_info.sha() { diff --git a/src/ci/run.sh b/src/ci/run.sh index 08ede122d65..a51c2da3cbd 100755 --- a/src/ci/run.sh +++ b/src/ci/run.sh @@ -90,25 +90,23 @@ if [ "$RUN_CHECK_WITH_PARALLEL_QUERIES" != "" ]; then rm -rf build fi -if [ "$SKIP_PREP" != "1" ]; then - travis_fold start configure - travis_time_start - $SRC/configure $RUST_CONFIGURE_ARGS - travis_fold end configure - travis_time_finish +travis_fold start configure +travis_time_start +$SRC/configure $RUST_CONFIGURE_ARGS +travis_fold end configure +travis_time_finish - travis_fold start make-prepare - travis_time_start - retry make prepare - travis_fold end make-prepare - travis_time_finish +travis_fold start make-prepare +travis_time_start +retry make prepare +travis_fold end make-prepare +travis_time_finish - travis_fold start check-bootstrap - travis_time_start - make check-bootstrap - travis_fold end check-bootstrap - travis_time_finish -fi +travis_fold start check-bootstrap +travis_time_start +make check-bootstrap +travis_fold end check-bootstrap +travis_time_finish # Display the CPU and memory information. This helps us know why the CI timing # is fluctuating.