| version: 1.0.{build} |
| environment: |
| matrix: |
| - COMPILER: "gcc" |
| MAKE_PARAMS: '"make test && make lib && make -C tests test-symbols fullbench-dll fullbench-lib"' |
| PLATFORM: "mingw64" |
| - COMPILER: "gcc" |
| MAKE_PARAMS: "make test" |
| PLATFORM: "mingw32" |
| - COMPILER: "visual" |
| CONFIGURATION: "Debug" |
| PLATFORM: "x64" |
| - COMPILER: "visual" |
| CONFIGURATION: "Debug" |
| PLATFORM: "Win32" |
| - COMPILER: "visual" |
| CONFIGURATION: "Release" |
| PLATFORM: "x64" |
| - COMPILER: "visual" |
| CONFIGURATION: "Release" |
| PLATFORM: "Win32" |
| |
| install: |
| - ECHO Installing %COMPILER% %PLATFORM% %CONFIGURATION% |
| - MKDIR bin |
| - if [%COMPILER%]==[gcc] SET PATH_ORIGINAL=%PATH% |
| - if [%COMPILER%]==[gcc] ( |
| SET "CLANG_PARAMS=-C tests zstd fullbench fuzzer paramgrill datagen CC=clang MOREFLAGS="--target=x86_64-w64-mingw32 -Werror -Wconversion -Wno-sign-conversion"" && |
| SET "PATH_MINGW32=c:\MinGW\bin;c:\MinGW\usr\bin" && |
| SET "PATH_MINGW64=c:\msys64\mingw64\bin;c:\msys64\usr\bin" && |
| COPY C:\msys64\usr\bin\make.exe C:\MinGW\bin\make.exe && |
| COPY C:\MinGW\bin\gcc.exe C:\MinGW\bin\cc.exe |
| ) else ( |
| IF [%PLATFORM%]==[x64] (SET ADDITIONALPARAM=/p:LibraryPath="C:\Program Files\Microsoft SDKs\Windows\v7.1\lib\x64;c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\amd64;C:\Program Files (x86)\Microsoft Visual Studio 10.0\;C:\Program Files (x86)\Microsoft Visual Studio 10.0\lib\amd64;") |
| ) |
| |
| build_script: |
| - ECHO Building %COMPILER% %PLATFORM% %CONFIGURATION% |
| - if [%PLATFORM%]==[mingw32] SET PATH=%PATH_MINGW32%;%PATH_ORIGINAL% |
| - if [%PLATFORM%]==[mingw64] SET PATH=%PATH_MINGW64%;%PATH_ORIGINAL% |
| - if [%PLATFORM%]==[mingw64] ( |
| make clean && |
| ECHO *** && |
| ECHO *** Building clang && |
| ECHO *** && |
| ECHO make %CLANG_PARAMS% && |
| make %CLANG_PARAMS% && |
| COPY tests\fuzzer.exe tests\fuzzer_clang.exe && |
| ECHO *** && |
| ECHO *** Building cmake for %PLATFORM% && |
| ECHO *** && |
| mkdir build\cmake\build && |
| cd build\cmake\build && |
| cmake -G "Visual Studio 14 2015 Win64" .. && |
| cd ..\..\.. && |
| make clean && |
| ECHO *** && |
| ECHO *** Building pzstd for %PLATFORM% && |
| ECHO *** && |
| make -C contrib\pzstd googletest-mingw64 && |
| make -C contrib\pzstd pzstd.exe && |
| make -C contrib\pzstd tests && |
| make -C contrib\pzstd check && |
| make -C contrib\pzstd clean |
| ) |
| - if [%COMPILER%]==[gcc] ( |
| ECHO *** && |
| ECHO *** Building %PLATFORM% && |
| ECHO *** && |
| make -v && |
| cc -v && |
| ECHO %MAKE_PARAMS% && |
| sh -c %MAKE_PARAMS% |
| ) |
| - if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw64] ( |
| COPY programs\zstd.exe bin\zstd.exe && |
| appveyor PushArtifact bin\zstd.exe |
| ) |
| - if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw32] ( |
| COPY programs\zstd.exe bin\zstd32.exe && |
| appveyor PushArtifact bin\zstd32.exe |
| ) |
| - if [%COMPILER%]==[gcc] make clean |
| - if [%COMPILER%]==[visual] ( |
| ECHO *** && |
| ECHO *** Building Visual Studio 2008 %PLATFORM%\%CONFIGURATION% in %APPVEYOR_BUILD_FOLDER% && |
| ECHO *** && |
| msbuild "build\VS2008\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v90 /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\*.exe && |
| MD5sum build/VS2008/bin/%PLATFORM%/%CONFIGURATION%/*.exe && |
| COPY build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2008_%PLATFORM%_%CONFIGURATION%.exe && |
| ECHO *** && |
| ECHO *** Building Visual Studio 2010 %PLATFORM%\%CONFIGURATION% && |
| ECHO *** && |
| msbuild "build\VS2010\zstd.sln" %ADDITIONALPARAM% /m /verbosity:minimal /property:PlatformToolset=v100 /p:ForceImportBeforeCppTargets=%APPVEYOR_BUILD_FOLDER%\build\VS2010\CompileAsCpp.props /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| msbuild "build\VS2010\zstd.sln" %ADDITIONALPARAM% /m /verbosity:minimal /property:PlatformToolset=v100 /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2010_%PLATFORM%_%CONFIGURATION%.exe && |
| ECHO *** && |
| ECHO *** Building Visual Studio 2012 %PLATFORM%\%CONFIGURATION% && |
| ECHO *** && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v110 /p:ForceImportBeforeCppTargets=%APPVEYOR_BUILD_FOLDER%\build\VS2010\CompileAsCpp.props /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v110 /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2012_%PLATFORM%_%CONFIGURATION%.exe && |
| ECHO *** && |
| ECHO *** Building Visual Studio 2013 %PLATFORM%\%CONFIGURATION% && |
| ECHO *** && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v120 /p:ForceImportBeforeCppTargets=%APPVEYOR_BUILD_FOLDER%\build\VS2010\CompileAsCpp.props /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v120 /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2013_%PLATFORM%_%CONFIGURATION%.exe && |
| ECHO *** && |
| ECHO *** Building Visual Studio 2015 %PLATFORM%\%CONFIGURATION% && |
| ECHO *** && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v140 /p:ForceImportBeforeCppTargets=%APPVEYOR_BUILD_FOLDER%\build\VS2010\CompileAsCpp.props /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| msbuild "build\VS2010\zstd.sln" /m /verbosity:minimal /property:PlatformToolset=v140 /t:Clean,Build /p:Platform=%PLATFORM% /p:Configuration=%CONFIGURATION% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && |
| DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe && |
| MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe && |
| COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2015_%PLATFORM%_%CONFIGURATION%.exe && |
| COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe tests\ |
| ) |
| |
| test_script: |
| - ECHO Testing %COMPILER% %PLATFORM% %CONFIGURATION% |
| - SET FUZZERTEST=-T1mn |
| - if [%COMPILER%]==[gcc] ( |
| if [%PLATFORM%]==[mingw64] tests\fuzzer_clang.exe %FUZZERTEST% |
| ) |
| - if [%COMPILER%]==[visual] if [%CONFIGURATION%]==[Release] ( |
| CD tests && |
| SET ZSTD=./zstd.exe && |
| sh -e playTests.sh --test-large-data && |
| fullbench.exe -i1 && |
| fullbench.exe -i1 -P0 && |
| fuzzer_VS2008_%PLATFORM%_Release.exe %FUZZERTEST% && |
| fuzzer_VS2010_%PLATFORM%_Release.exe %FUZZERTEST% && |
| fuzzer_VS2012_%PLATFORM%_Release.exe %FUZZERTEST% && |
| fuzzer_VS2013_%PLATFORM%_Release.exe %FUZZERTEST% && |
| fuzzer_VS2015_%PLATFORM%_Release.exe %FUZZERTEST% |
| ) |
| |
| artifacts: |
| - path: bin\zstd.exe |
| - path: bin\zstd32.exe |
| |
| deploy: |
| - provider: GitHub |
| auth_token: |
| secure: LgJo8emYc3sFnlNWkGl4/VYK3nk/8+RagcsqDlAi3xeqNGNutnKjcftjg84uJoT4 |
| artifact: bin\zstd.exe |
| force_update: true |
| on: |
| branch: autobuild |
| COMPILER: gcc |
| PLATFORM: "mingw64" |
| appveyor_repo_tag: true |
| - provider: GitHub |
| auth_token: |
| secure: LgJo8emYc3sFnlNWkGl4/VYK3nk/8+RagcsqDlAi3xeqNGNutnKjcftjg84uJoT4 |
| artifact: bin\zstd32.exe |
| force_update: true |
| on: |
| branch: autobuild |
| COMPILER: gcc |
| PLATFORM: "mingw32" |
| appveyor_repo_tag: true |