branches: only: - staging - trying - master - /post-.*/ # Appveyor configuration template for Rust using rustup for Rust installation # https://github.com/starkat99/appveyor-rust ## Operating System (VM environment) ## # Rust needs at least Visual Studio 2013 Appveyor OS for MSVC targets. os: Visual Studio 2015 ## Build Matrix ## environment: matrix: ### MSVC Toolchains ### # Nightly 64-bit MSVC - channel: nightly target: x86_64-pc-windows-msvc MSYS_BITS: 64 # Nightly 32-bit MSVC - channel: nightly target: i686-pc-windows-msvc MSYS_BITS: 32 ### GNU Toolchains ### # Nightly 64-bit GNU - channel: nightly target: x86_64-pc-windows-gnu MSYS_BITS: 64 # Nightly 32-bit GNU - channel: nightly target: i686-pc-windows-gnu MSYS_BITS: 32 cache: - '%USERPROFILE%\.cargo\bin' - '%USERPROFILE%\.cargo\.crates.toml' ## Install Script ## # This is the most important part of the Appveyor configuration. This installs the version of Rust # specified by the 'channel' and 'target' environment variables from the build matrix. This uses # rustup to install Rust. # # For simple configurations, instead of using the build matrix, you can simply set the # default-toolchain and default-host manually here. install: - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe - rustup-init -yv --default-toolchain %channel% --default-host %target% - set PATH=%PATH%;%USERPROFILE%\.cargo\bin - rustc -vV - cargo -vV ## Build Script ## # 'cargo test' takes care of building for us, so disable Appveyor's build stage. This prevents # the "directory does not contain a project or solution file" error. build: false before_test: - set PATH=C:\msys64\mingw%MSYS_BITS%\bin;C:\msys64\usr\bin;%PATH% # Fix undefined references to __acrt_iob_func() - sed -rie "s/#define std([[:alpha:]]+)[[:space:]]+\(__acrt_iob_func\(([[:digit:]]+)\)\)/#define std\1 (\&__iob_func()[\2])/" "C:\msys64\mingw64\x86_64-w64-mingw32\include\stdio.h" - sed -rie "s/#define std([[:alpha:]]+)[[:space:]]+\(__acrt_iob_func\(([[:digit:]]+)\)\)/#define std\1 (\&__iob_func()[\2])/" "C:\msys64\mingw32\i686-w64-mingw32\include\stdio.h" - rustup component add rust-src - set RUST_BACKTRACE=1 - if not exist %USERPROFILE%\.cargo\bin\cargo-install-latest.exe cargo install cargo-install-latest - cargo install-latest cargo-xbuild bootimage test_script: - bootimage build