Browse Source

test

wintest
Alex Crichton 6 years ago
parent
commit
4f2f638912
  1. 63
      .travis.yml
  2. 52
      appveyor.yml
  3. 10
      src/main.rs

63
.travis.yml

@ -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

52
appveyor.yml

@ -1,55 +1,17 @@
environment: 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: matrix:
- TARGET: x86_64-pc-windows-msvc - TARGET: x86_64-pc-windows-msvc
ARCH: amd64 APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
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: install:
- ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-nightly-${env:TARGET}.exe" - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
- rust-nightly-%TARGET%.exe /VERYSILENT /NORESTART /DIR="C:\Program Files (x86)\Rust" - rustup-init.exe -y --default-host x86_64-pc-windows-msvc --default-toolchain nightly
- if defined VS call "%VS%" %ARCH% - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
- set PATH=%PATH%;C:\Program Files (x86)\Rust\bin
- if defined MSYS_BITS set PATH=%PATH%;C:\msys64\mingw%MSYS_BITS%\bin
- rustc -V - rustc -V
- cargo -V - cargo -V
- git submodule update --init
build: false build: false
test_script: test_script:
- cargo test --target %TARGET% - cargo run --bin cc
- 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%

10
src/main.rs

@ -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…
Cancel
Save