mirror of https://github.com/lukechilds/cc-rs.git
Alex Crichton
6 years ago
committed by
GitHub
6 changed files with 128 additions and 118 deletions
@ -1,61 +0,0 @@ |
|||||
language: rust |
|
||||
sudo: false |
|
||||
|
|
||||
matrix: |
|
||||
include: |
|
||||
- rust: 1.16.0 |
|
||||
install: |
|
||||
script: cargo build |
|
||||
- rust: stable |
|
||||
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1 |
|
||||
- rust: stable |
|
||||
env: TARGET=i686-unknown-linux-gnu |
|
||||
- os: osx |
|
||||
env: TARGET=x86_64-apple-darwin NO_ADD=1 |
|
||||
- os: osx |
|
||||
env: TARGET=aarch64-apple-ios NO_RUN=--no-run TARGET_SYSROOT=$(xcrun -sdk iphoneos --show-sdk-path) |
|
||||
- rust: beta |
|
||||
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1 |
|
||||
- rust: nightly |
|
||||
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1 |
|
||||
|
|
||||
- name: "master doc to gh-pages" |
|
||||
install: true |
|
||||
rust: nightly |
|
||||
script: |
|
||||
- cargo doc --no-deps --all-features |
|
||||
deploy: |
|
||||
provider: script |
|
||||
script: curl -LsSf https://git.io/fhJ8n | rustc - && (cd target/doc && ../../rust_out) |
|
||||
skip_cleanup: true |
|
||||
on: |
|
||||
branch: master |
|
||||
|
|
||||
install: |
|
||||
- if [ -z "$NO_ADD" ]; then rustup target add $TARGET; fi |
|
||||
|
|
||||
script: |
|
||||
- cargo build --verbose |
|
||||
# FIXME: no idea why `--test-threads=1` is required on the OSX builder, it |
|
||||
# just randomly broke one day when the travis image was upgraded, and |
|
||||
# debugging turned up no easily found source of bugs... |
|
||||
# |
|
||||
# good build - https://travis-ci.org/alexcrichton/cc-rs/builds/409602374 |
|
||||
# bad build - https://travis-ci.org/alexcrichton/cc-rs/builds/410489079 |
|
||||
# |
|
||||
# Those are using the same compiler, same commit, same... everything. Except |
|
||||
# the OSX image! No idea what changed... |
|
||||
- cargo test --verbose $NO_RUN -- --test-threads=1 |
|
||||
- cargo test --verbose --features parallel $NO_RUN -- --test-threads=1 |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --target $TARGET $NO_RUN |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --target $TARGET --features parallel $NO_RUN |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --target $TARGET --release $NO_RUN |
|
||||
- cargo clean && cargo build |
|
||||
|
|
||||
notifications: |
|
||||
email: |
|
||||
on_success: never |
|
||||
addons: |
|
||||
apt: |
|
||||
packages: |
|
||||
- g++-multilib |
|
@ -1,55 +0,0 @@ |
|||||
environment: |
|
||||
|
|
||||
# At the time this was added AppVeyor was having troubles with checking |
|
||||
# revocation of SSL certificates of sites like static.rust-lang.org and what |
|
||||
# we think is crates.io. The libcurl HTTP client by default checks for |
|
||||
# revocation on Windows and according to a mailing list [1] this can be |
|
||||
# disabled. |
|
||||
# |
|
||||
# The `CARGO_HTTP_CHECK_REVOKE` env var here tells cargo to disable SSL |
|
||||
# revocation checking on Windows in libcurl. Note, though, that rustup, which |
|
||||
# we're using to download Rust here, also uses libcurl as the default backend. |
|
||||
# Unlike Cargo, however, rustup doesn't have a mechanism to disable revocation |
|
||||
# checking. To get rustup working we set `RUSTUP_USE_HYPER` which forces it to |
|
||||
# use the Hyper instead of libcurl backend. Both Hyper and libcurl use |
|
||||
# schannel on Windows but it appears that Hyper configures it slightly |
|
||||
# differently such that revocation checking isn't turned on by default. |
|
||||
# |
|
||||
# [1]: https://curl.haxx.se/mail/lib-2016-03/0202.html |
|
||||
RUSTUP_USE_HYPER: 1 |
|
||||
CARGO_HTTP_CHECK_REVOKE: false |
|
||||
|
|
||||
matrix: |
|
||||
- TARGET: x86_64-pc-windows-msvc |
|
||||
ARCH: amd64 |
|
||||
VS: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat |
|
||||
- TARGET: x86_64-pc-windows-msvc |
|
||||
ARCH: amd64 |
|
||||
VS: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
|
||||
- TARGET: i686-pc-windows-msvc |
|
||||
ARCH: x86 |
|
||||
VS: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat |
|
||||
- TARGET: i686-pc-windows-msvc |
|
||||
ARCH: x86 |
|
||||
VS: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
|
||||
- TARGET: x86_64-pc-windows-gnu |
|
||||
MSYS_BITS: 64 |
|
||||
- TARGET: i686-pc-windows-gnu |
|
||||
MSYS_BITS: 32 |
|
||||
install: |
|
||||
- ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-nightly-${env:TARGET}.exe" |
|
||||
- rust-nightly-%TARGET%.exe /VERYSILENT /NORESTART /DIR="C:\Program Files (x86)\Rust" |
|
||||
- if defined VS call "%VS%" %ARCH% |
|
||||
- set PATH=%PATH%;C:\Program Files (x86)\Rust\bin |
|
||||
- if defined MSYS_BITS set PATH=%PATH%;C:\msys64\mingw%MSYS_BITS%\bin |
|
||||
- rustc -V |
|
||||
- cargo -V |
|
||||
|
|
||||
build: false |
|
||||
|
|
||||
test_script: |
|
||||
- cargo test --target %TARGET% |
|
||||
- cargo test --features parallel --target %TARGET% |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --target %TARGET% |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --features parallel --target %TARGET% |
|
||||
- cargo test --manifest-path cc-test/Cargo.toml --release --target %TARGET% |
|
@ -0,0 +1,87 @@ |
|||||
|
trigger: |
||||
|
- master |
||||
|
|
||||
|
jobs: |
||||
|
- job: min |
||||
|
displayName: Minimum Rust |
||||
|
steps: |
||||
|
- template: ci/azure-install-rust.yml |
||||
|
parameters: |
||||
|
toolchain: 1.16.0 |
||||
|
- script: cargo build |
||||
|
|
||||
|
- job: Linux |
||||
|
pool: |
||||
|
vmImage: ubuntu-16.04 |
||||
|
strategy: |
||||
|
matrix: |
||||
|
x86_64: |
||||
|
TARGET: x86_64-unknown-linux-gnu |
||||
|
i686: |
||||
|
TARGET: i686-unknown-linux-gnu |
||||
|
x86_64-beta: |
||||
|
TARGET: x86_64-unknown-linux-gnu |
||||
|
TOOLCHAIN: beta |
||||
|
x86_64-nightly: |
||||
|
TARGET: x86_64-unknown-linux-gnu |
||||
|
TOOLCHAIN: nightly |
||||
|
|
||||
|
- job: macOS |
||||
|
pool: |
||||
|
vmImage: macos-10.13 |
||||
|
steps: |
||||
|
- template: ci/azure-steps.yml |
||||
|
strategy: |
||||
|
matrix: |
||||
|
x86_64: |
||||
|
TARGET: x86_64-apple-darwin |
||||
|
aarch64-ios: |
||||
|
TARGET: aarch64-apple-ios |
||||
|
NO_RUN: --no-run |
||||
|
|
||||
|
- job: Windows_vs2019 |
||||
|
pool: |
||||
|
vmImage: windows-2019 |
||||
|
steps: |
||||
|
- template: ci/azure-steps.yml |
||||
|
strategy: |
||||
|
matrix: |
||||
|
x86_64-msvc: |
||||
|
TARGET: x86_64-pc-windows-msvc |
||||
|
|
||||
|
- job: Windows_vs2017 |
||||
|
pool: |
||||
|
vmImage: vs2017-win2016 |
||||
|
steps: |
||||
|
- template: ci/azure-steps.yml |
||||
|
strategy: |
||||
|
matrix: |
||||
|
x86_64-msvc: |
||||
|
TARGET: x86_64-pc-windows-msvc |
||||
|
i686-msvc: |
||||
|
TARGET: i686-pc-windows-msvc |
||||
|
x86_64-gnu: |
||||
|
TARGET: x86_64-pc-windows-gnu |
||||
|
i686-gnu: |
||||
|
TARGET: i686-pc-windows-gnu |
||||
|
|
||||
|
- job: Windows_vs2015 |
||||
|
pool: |
||||
|
vmImage: vs2015-win2012r2 |
||||
|
steps: |
||||
|
- template: ci/azure-steps.yml |
||||
|
strategy: |
||||
|
matrix: |
||||
|
x86_64-msvc: |
||||
|
TARGET: x86_64-pc-windows-msvc |
||||
|
i686-msvc: |
||||
|
TARGET: i686-pc-windows-msvc |
||||
|
|
||||
|
- job: docs |
||||
|
steps: |
||||
|
- template: ci/azure-install-rust.yml |
||||
|
- script: cargo doc --no-deps --all-features |
||||
|
- script: curl -LsSf https://git.io/fhJ8n | rustc - && (cd target/doc && ../../rust_out) |
||||
|
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/master')) |
||||
|
env: |
||||
|
GITHUB_DEPLOY_KEY: $(GITHUB_DEPLOY_KEY) |
@ -0,0 +1,23 @@ |
|||||
|
steps: |
||||
|
- bash: | |
||||
|
set -e |
||||
|
toolchain=$TOOLCHAIN |
||||
|
if [ "$toolchain" = "" ]; then |
||||
|
toolchain=stable |
||||
|
fi |
||||
|
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $toolchain |
||||
|
echo "##vso[task.prependpath]$HOME/.cargo/bin" |
||||
|
displayName: Install rust (unix) |
||||
|
condition: ne( variables['Agent.OS'], 'Windows_NT' ) |
||||
|
|
||||
|
- script: | |
||||
|
curl -sSf -o rustup-init.exe https://win.rustup.rs |
||||
|
rustup-init.exe -y --default-toolchain stable-%TARGET% |
||||
|
echo ##vso[task.prependpath]%USERPROFILE%\.cargo\bin |
||||
|
displayName: Install rust (windows) |
||||
|
condition: eq( variables['Agent.OS'], 'Windows_NT' ) |
||||
|
|
||||
|
- script: | |
||||
|
rustc -Vv |
||||
|
cargo -V |
||||
|
displayName: Query rust and cargo versions |
@ -0,0 +1,17 @@ |
|||||
|
steps: |
||||
|
- template: azure-install-rust.yml |
||||
|
- bash: rustup target add $TARGET |
||||
|
displayName: Install Rust target |
||||
|
|
||||
|
- script: cargo build |
||||
|
displayName: "Normal build" |
||||
|
- bash: cargo test $NO_RUN -- --test-threads 1 |
||||
|
displayName: "Crate tests" |
||||
|
- bash: cargo test $NO_RUN --features parallel -- --test-threads 1 |
||||
|
displayName: "Crate tests (parallel)" |
||||
|
- bash: cargo test $NO_RUN --manifest-path cc-test/Cargo.toml --target $TARGET |
||||
|
displayName: "cc-test tests" |
||||
|
- bash: cargo test $NO_RUN --manifest-path cc-test/Cargo.toml --target $TARGET --features parallel |
||||
|
displayName: "cc-test tests (parallel)" |
||||
|
- bash: cargo test $NO_RUN --manifest-path cc-test/Cargo.toml --target $TARGET --release |
||||
|
displayName: "cc-test tests (release)" |
Loading…
Reference in new issue