mirror of https://github.com/lukechilds/cc-rs.git
Alex Crichton
6 years ago
3 changed files with 17 additions and 108 deletions
@ -1,63 +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 |
|||
|
|||
- rust: nightly |
|||
before_script: |
|||
- pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH |
|||
install: |
|||
script: |
|||
- cargo doc --no-deps --all-features |
|||
after_success: |
|||
- travis-cargo --only nightly doc-upload |
|||
|
|||
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 doc |
|||
- cargo clean && cargo build |
|||
|
|||
env: |
|||
global: |
|||
secure: "CBtqrudgE0PS8x3kTr44jKbC2D4nfnmdYVecooNm0qnER4B4TSvZpZSQoCgKK6k4BYQuOSyFTOwYx6M79w39ZMOgyCP9ytB+tyMWL0/+ZuUQL04yVg4M5vd3oJMkOaXbvG56ncgPyFrseY+FPDg+mXAzvJk/nily37YXjkQj2D0=" |
|||
|
|||
notifications: |
|||
email: |
|||
on_success: never |
|||
addons: |
|||
apt: |
|||
packages: |
|||
- g++-multilib |
@ -1,55 +1,17 @@ |
|||
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 |
|||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
|||
|
|||
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 |
|||
- appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe |
|||
- rustup-init.exe -y --default-host x86_64-pc-windows-msvc --default-toolchain nightly |
|||
- set PATH=%PATH%;C:\Users\appveyor\.cargo\bin |
|||
- rustc -V |
|||
- cargo -V |
|||
- git submodule update --init |
|||
|
|||
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% |
|||
- cargo run --bin cc |
|||
|
@ -0,0 +1,10 @@ |
|||
extern crate cc; |
|||
|
|||
fn main() { |
|||
let mut build = cc::Build::new(); |
|||
build.opt_level(2); |
|||
build.target("aarch64-pc-windows-msvc"); |
|||
build.host("x86_64-pc-windows-msvc"); |
|||
let cc = build.get_compiler(); |
|||
println!("{:#?}", cc); |
|||
} |
Loading…
Reference in new issue