| #---------------------------------# |
| # general configuration # |
| #---------------------------------# |
| version: 1.0.{build} |
| max_jobs: 2 |
| |
| #---------------------------------# |
| # environment configuration # |
| #---------------------------------# |
| clone_depth: 2 |
| environment: |
| matrix: |
| - COMPILER: "visual" |
| ARCH: "x64" |
| TEST_XXHSUM: "true" |
| - COMPILER: "visual" |
| ARCH: "x64" |
| APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| TEST_XXHSUM: "true" |
| - COMPILER: "visual" |
| ARCH: "Win32" |
| TEST_XXHSUM: "true" |
| - COMPILER: "visual" |
| ARCH: "Win32" |
| APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013 |
| TEST_XXHSUM: "true" |
| - COMPILER: "visual" |
| ARCH: "ARM" |
| - COMPILER: "visual" |
| ARCH: "ARM64" |
| APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| # note : ARM64 is not available with Visual Studio 14 2015, which is default for Appveyor |
| - COMPILER: "gcc" |
| PLATFORM: "mingw64" |
| - COMPILER: "gcc" |
| PLATFORM: "mingw32" |
| - COMPILER: "gcc" |
| PLATFORM: "clang" |
| |
| install: |
| - ECHO Installing %COMPILER% %PLATFORM% %ARCH% |
| - MKDIR bin |
| - if [%COMPILER%]==[gcc] SET PATH_ORIGINAL=%PATH% |
| - if [%COMPILER%]==[gcc] ( |
| SET "PATH_MINGW32=c:\MinGW\bin;c:\MinGW\usr\bin" && |
| SET "PATH_MINGW64=c:\msys64\mingw64\bin;c:\msys64\usr\bin" && |
| COPY C:\MinGW\bin\mingw32-make.exe C:\MinGW\bin\make.exe && |
| COPY C:\MinGW\bin\gcc.exe C:\MinGW\bin\cc.exe |
| ) |
| |
| #---------------------------------# |
| # build configuration # |
| #---------------------------------# |
| build_script: |
| - if [%PLATFORM%]==[mingw32] SET PATH=%PATH_MINGW32%;%PATH_ORIGINAL% |
| - if [%PLATFORM%]==[mingw64] SET PATH=%PATH_MINGW64%;%PATH_ORIGINAL% |
| - if [%PLATFORM%]==[clang] SET PATH=%PATH_MINGW64%;%PATH_ORIGINAL% |
| - ECHO *** |
| - ECHO Building %COMPILER% %PLATFORM% %ARCH% |
| - ECHO *** |
| |
| - if [%COMPILER%]==[gcc] ( |
| if [%PLATFORM%]==[clang] ( |
| clang -v |
| ) ELSE ( |
| gcc -v |
| ) |
| ) |
| - if [%COMPILER%]==[gcc] ( |
| echo ----- && |
| make -v && |
| echo ----- && |
| if not [%PLATFORM%]==[clang] ( |
| make -B clean test MOREFLAGS=-Werror |
| ) ELSE ( |
| make -B clean test CC=clang MOREFLAGS="--target=x86_64-w64-mingw32 -Werror -Wno-pass-failed -Dinline=" |
| ) && |
| make -C tests/bench |
| ) |
| # note : strict c90 tests with clang fail, due to (erroneous) presence on `inline` keyword in some included system file |
| # -Dinline= is a way to disable this keyword |
| |
| - if [%COMPILER%]==[visual] ( |
| cd cmake_unofficial && |
| cmake . -DCMAKE_BUILD_TYPE=Release -A %ARCH% && |
| cmake --build . --config Release |
| ) |
| |
| #---------------------------------# |
| # tests configuration # |
| #---------------------------------# |
| test_script: |
| # note : can only run x86 and x64 binaries on Appveyor |
| # note : if %COMPILER%==gcc, xxhsum was already tested within `make test` |
| - if [%TEST_XXHSUM%]==[true] ( |
| ECHO *** && |
| ECHO Testing %COMPILER% %PLATFORM% %ARCH% && |
| ECHO *** && |
| cd Release && |
| xxhsum.exe -bi1 && |
| ECHO ------- xxhsum tested ------- |
| ) |
| |
| |
| #---------------------------------# |
| # artifacts configuration # |
| #---------------------------------# |
| # none yet |