diff --git a/.travis.yml b/.travis.yml index c53638cb4..15b725af1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,12 @@ language: rust -rust: - - stable - - beta - - nightly +matrix: + include: + - rust: stable + env: FEATURES='' + - rust: beta + env: FEATURES='' + - rust: nightly + env: FEATURES=nightly os: - linux - osx @@ -11,5 +15,5 @@ cache: - $HOME/.cargo sudo: false script: - - cargo build - - cargo test --no-fail-fast + - cargo build --features "$FEATURES" + - cargo test --features "$FEATURES" --no-fail-fast diff --git a/Cargo.toml b/Cargo.toml index b9132bf73..c67505a6b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -95,8 +95,9 @@ generic = [ "whoami", "yes", ] -default = ["generic", "unix"] test_unimplemented = [] +nightly = [] +default = ["generic", "unix"] [dependencies] uucore = { path="src/uucore" } diff --git a/appveyor.yml b/appveyor.yml index ac9aa5828..dd7fea6a4 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,11 +3,26 @@ environment: - TARGET: x86_64-pc-windows-msvc - TARGET: i686-pc-windows-msvc - TARGET: i686-pc-windows-gnu + MINGW_URL: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.2/threads-win32/dwarf/i686-4.9.2-release-win32-dwarf-rt_v4-rev4.7z/download + MINGW_ARCHIVE: i686-4.9.2-release-win32-dwarf-rt_v4-rev4.7z + MINGW_DIR: mingw32 + - TARGET: x86_64-pc-windows-gnu + MSYS_BITS: 64 + install: - ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-nightly-${env:TARGET}.exe" + - SET PATH=%PATH%;C:\Program Files (x86)\Rust\bin;C:\MinGW\bin + + # Use the system msys if we can + - if defined MSYS_BITS set PATH=C:\msys64\mingw%MSYS_BITS%\bin;C:\msys64\usr\bin;%PATH% + + # download a custom compiler otherwise + - if defined MINGW_ARCHIVE appveyor DownloadFile "%MINGW_URL%" -FileName "%MINGW_ARCHIVE%" + - if defined MINGW_ARCHIVE 7z x -y "%MINGW_ARCHIVE%" > nul + - if defined MINGW_ARCHIVE set PATH=%CD%\%MINGW_DIR%\bin;C:\msys64\usr\bin;%PATH% + - rust-nightly-%TARGET%.exe /VERYSILENT /NORESTART /DIR="C:\Program Files (x86)\Rust" - - SET PATH=%PATH%;C:\Program Files (x86)\Rust\bin - - SET PATH=%PATH%;C:\MinGW\bin + - rustc -V - cargo -V