Auto merge of #120543 - ehuss:macos-ninja, r=Mark-Simulacrum
CI: Use ninja on apple builders
This switches the apple builders to use ninja when building LLVM. My hope is that this should resolve the timeouts we have been experiencing since December. My theory is that something in the image update from [Dec 20](dec20a5272
) is causing an issue with our build (or, perhaps more remotely, some [update to LLVM itself](https://github.com/rust-lang/rust/commits/master/src/llvm-project)).
The symptoms are that during the LLVM build it just hangs just before the install step. The last thing it prints is `[100%] Built target llvm-reduce` and then just hangs. Normally the next part should be `Install the project...` where it starts installing LLVM. I'm able to reproduce this without too much difficulty. I've been testing ninja, and it seems to be working better (however, my test isn't quite equivalent, since I'm getting sccache misses, and I can't update the S3 bucket).
Installing ninja takes about 7 to 10 seconds, so it shouldn't impact things. I can't determine if it will affect the overall build timing due to not being able to test with a warm S3 cache.
This commit is contained in:
commit
671eb38a4e
10
.github/workflows/ci.yml
vendored
10
.github/workflows/ci.yml
vendored
@ -319,7 +319,7 @@ jobs:
|
|||||||
- name: dist-x86_64-apple
|
- name: dist-x86_64-apple
|
||||||
env:
|
env:
|
||||||
SCRIPT: "./x.py dist bootstrap --include-default-paths --host=x86_64-apple-darwin --target=x86_64-apple-darwin"
|
SCRIPT: "./x.py dist bootstrap --include-default-paths --host=x86_64-apple-darwin --target=x86_64-apple-darwin"
|
||||||
RUST_CONFIGURE_ARGS: "--enable-full-tools --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false --set rust.lto=thin"
|
RUST_CONFIGURE_ARGS: "--enable-full-tools --enable-sanitizers --enable-profiler --set rust.jemalloc --set rust.lto=thin"
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
@ -332,7 +332,7 @@ jobs:
|
|||||||
- name: dist-apple-various
|
- name: dist-apple-various
|
||||||
env:
|
env:
|
||||||
SCRIPT: "./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
|
SCRIPT: "./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
|
||||||
RUST_CONFIGURE_ARGS: "--enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false"
|
RUST_CONFIGURE_ARGS: "--enable-sanitizers --enable-profiler --set rust.jemalloc"
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
@ -343,7 +343,7 @@ jobs:
|
|||||||
- name: x86_64-apple-1
|
- name: x86_64-apple-1
|
||||||
env:
|
env:
|
||||||
SCRIPT: "./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/run-make-fulldeps"
|
SCRIPT: "./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/run-make-fulldeps"
|
||||||
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false"
|
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc"
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
||||||
@ -354,7 +354,7 @@ jobs:
|
|||||||
- name: x86_64-apple-2
|
- name: x86_64-apple-2
|
||||||
env:
|
env:
|
||||||
SCRIPT: "./x.py --stage 2 test tests/ui tests/rustdoc tests/run-make-fulldeps"
|
SCRIPT: "./x.py --stage 2 test tests/ui tests/rustdoc tests/run-make-fulldeps"
|
||||||
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false"
|
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc"
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
||||||
@ -365,7 +365,7 @@ jobs:
|
|||||||
- name: dist-aarch64-apple
|
- name: dist-aarch64-apple
|
||||||
env:
|
env:
|
||||||
SCRIPT: "./x.py dist bootstrap --include-default-paths --stage 2"
|
SCRIPT: "./x.py dist bootstrap --include-default-paths --stage 2"
|
||||||
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --host=aarch64-apple-darwin --target=aarch64-apple-darwin --enable-full-tools --enable-sanitizers --enable-profiler --disable-docs --set rust.jemalloc --set llvm.ninja=false"
|
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --host=aarch64-apple-darwin --target=aarch64-apple-darwin --enable-full-tools --enable-sanitizers --enable-profiler --disable-docs --set rust.jemalloc"
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
USE_XCODE_CLANG: 1
|
USE_XCODE_CLANG: 1
|
||||||
|
@ -511,7 +511,7 @@ jobs:
|
|||||||
- name: dist-x86_64-apple
|
- name: dist-x86_64-apple
|
||||||
env:
|
env:
|
||||||
SCRIPT: ./x.py dist bootstrap --include-default-paths --host=x86_64-apple-darwin --target=x86_64-apple-darwin
|
SCRIPT: ./x.py dist bootstrap --include-default-paths --host=x86_64-apple-darwin --target=x86_64-apple-darwin
|
||||||
RUST_CONFIGURE_ARGS: --enable-full-tools --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false --set rust.lto=thin
|
RUST_CONFIGURE_ARGS: --enable-full-tools --enable-sanitizers --enable-profiler --set rust.jemalloc --set rust.lto=thin
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
@ -525,7 +525,7 @@ jobs:
|
|||||||
- name: dist-apple-various
|
- name: dist-apple-various
|
||||||
env:
|
env:
|
||||||
SCRIPT: ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim
|
SCRIPT: ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim
|
||||||
RUST_CONFIGURE_ARGS: --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false
|
RUST_CONFIGURE_ARGS: --enable-sanitizers --enable-profiler --set rust.jemalloc
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
@ -537,7 +537,7 @@ jobs:
|
|||||||
- name: x86_64-apple-1
|
- name: x86_64-apple-1
|
||||||
env: &env-x86_64-apple-tests
|
env: &env-x86_64-apple-tests
|
||||||
SCRIPT: ./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/run-make-fulldeps
|
SCRIPT: ./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/run-make-fulldeps
|
||||||
RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false
|
RUST_CONFIGURE_ARGS: --build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.12
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
||||||
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
MACOSX_STD_DEPLOYMENT_TARGET: 10.12
|
||||||
@ -565,7 +565,6 @@ jobs:
|
|||||||
--enable-profiler
|
--enable-profiler
|
||||||
--disable-docs
|
--disable-docs
|
||||||
--set rust.jemalloc
|
--set rust.jemalloc
|
||||||
--set llvm.ninja=false
|
|
||||||
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
|
||||||
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
SELECT_XCODE: /Applications/Xcode_13.4.1.app
|
||||||
USE_XCODE_CLANG: 1
|
USE_XCODE_CLANG: 1
|
||||||
|
@ -13,4 +13,6 @@ if isWindows; then
|
|||||||
rm ninja.zip
|
rm ninja.zip
|
||||||
ciCommandSetEnv "RUST_CONFIGURE_ARGS" "${RUST_CONFIGURE_ARGS} --enable-ninja"
|
ciCommandSetEnv "RUST_CONFIGURE_ARGS" "${RUST_CONFIGURE_ARGS} --enable-ninja"
|
||||||
ciCommandAddPath "$(pwd)/ninja"
|
ciCommandAddPath "$(pwd)/ninja"
|
||||||
|
elif isMacOS; then
|
||||||
|
brew install ninja
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user