## Build Matrix ## environment: RUST_TEST_THREADS: 1 matrix: ### Mac OS - APPVEYOR_BUILD_WORKER_IMAGE: macOS CHANNEL: stable TARGET: x86_64-apple-darwin - APPVEYOR_BUILD_WORKER_IMAGE: macOS CHANNEL: 1.36.0 TARGET: x86_64-apple-darwin - APPVEYOR_BUILD_WORKER_IMAGE: macOS CHANNEL: beta # Requires at least 1.48.0-beta TARGET: aarch64-apple-darwin DISABLE_TESTS: 1 ### iOS - APPVEYOR_BUILD_WORKER_IMAGE: macOS CHANNEL: stable TARGET: aarch64-apple-ios DISABLE_TESTS: 1 - APPVEYOR_BUILD_WORKER_IMAGE: macOS CHANNEL: stable TARGET: x86_64-apple-ios DISABLE_TESTS: 1 ### Windows - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 CHANNEL: stable TARGET: x86_64-pc-windows-msvc BITS: 64 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 CHANNEL: stable TARGET: i686-pc-windows-msvc BITS: 32 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 CHANNEL: stable TARGET: x86_64-pc-windows-gnu BITS: 64 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 CHANNEL: stable TARGET: i686-pc-windows-gnu BITS: 32 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 CHANNEL: 1.36.0 TARGET: x86_64-pc-windows-msvc BITS: 64 install: # Mac builds - sh: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain ${CHANNEL} --profile minimal -y - sh: source $HOME/.cargo/env - sh: rustup target add ${TARGET} # Windows builds - cmd: IF "%BITS%" == "32" SET ARCH=i686 - cmd: IF "%BITS%" == "64" SET ARCH=x86_64 - cmd: appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe - cmd: rustup-init -yv --default-toolchain %CHANNEL% --profile minimal - cmd: set PATH=C:\msys64\mingw%BITS%\bin;C:\msys64\usr\bin;%USERPROFILE%\.cargo\bin;%PATH% - cmd: rustup target add %TARGET% build_script: # Mac builds - sh: cargo build --target ${TARGET} # Windows builds - cmd: cargo build --target %TARGET% test_script: # Mac builds - sh: if [[ -n $DISABLE_TESTS ]]; then echo "Skipping tests"; else cargo test --target ${TARGET} --no-fail-fast; fi # Windows builds - cmd: if defined DISABLE_TESTS (echo "Skipping tests") else (cargo test --target %TARGET% --no-fail-fast)