51 lines
1.8 KiB
YAML
51 lines
1.8 KiB
YAML
version: '{build}'
|
|
|
|
# use an image with recent Mingw-w64 versions available on both architectures: https://www.appveyor.com/docs/windows-images-software/#mingw-msys-cygwin
|
|
image: Visual Studio 2015
|
|
|
|
environment:
|
|
# disable LFS file downloading during regular cloning
|
|
GIT_LFS_SKIP_SMUDGE: 1
|
|
|
|
cache:
|
|
- NimBinaries
|
|
|
|
matrix:
|
|
# We always want 32-bit and 64-bit compilation
|
|
fast_finish: false
|
|
|
|
platform:
|
|
- x86
|
|
- x64
|
|
|
|
# when multiple CI builds are queued, the tested commit needs to be in the last X commits cloned with "--depth X"
|
|
clone_depth: 10
|
|
|
|
init:
|
|
# disable cache saving outside the master branch
|
|
- ps: IF ("$env:APPVEYOR_REPO_BRANCH" -ne "master") { $env:APPVEYOR_CACHE_SKIP_SAVE = "true" }
|
|
|
|
install:
|
|
# use the newest versions documented here: https://www.appveyor.com/docs/windows-images-software/#mingw-msys-cygwin
|
|
- IF "%PLATFORM%" == "x86" SET PATH=C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin;%PATH%
|
|
- IF "%PLATFORM%" == "x64" SET PATH=C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin;%PATH%
|
|
|
|
build_script:
|
|
# the 32-bit build is done on a 64-bit image, so we need to override the architecture
|
|
- mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% CI_CACHE=NimBinaries update
|
|
- mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% fetch-dlls
|
|
- dir C:\mingw-w64
|
|
|
|
test_script:
|
|
- mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM%
|
|
- build\nimbus.exe --help
|
|
- mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% test
|
|
- IF "%PLATFORM%" == "x64" mingw32-make -j2 test-reproducibility
|
|
# Disable libnimbus builds until https://github.com/nim-lang/Nim/issues/12759 is fixed.
|
|
# Wrapper builds could then also get activated instead but need some rework for Windows.
|
|
# - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% libnimbus.so
|
|
# - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% libnimbus.a
|
|
|
|
deploy: off
|
|
|