blob: c6ab786889eb09f78b5f2c33c8afb15e37192775 [file] [log] [blame]
Yann Collet0b395312020-12-16 23:00:35 -08001# Following tests are run _only_ on `release` branch
2# and on selected feature branch named `appveyorTest` or `visual*`
Yann Collet03ef7b72019-10-18 14:52:16 -07003
Sean Purcell5a2b8572017-03-14 15:59:57 -07004-
5 version: 1.0.{build}
6 branches:
7 only:
Yann Collet0b395312020-12-16 23:00:35 -08008 - release
Sean Purcell5a2b8572017-03-14 15:59:57 -07009 - master
Yann Collet0b395312020-12-16 23:00:35 -080010 - /appveyor*/
Yann Colletecd4df42018-12-25 14:55:45 -080011 - /visual*/
Sean Purcell5a2b8572017-03-14 15:59:57 -070012 environment:
13 matrix:
14 - COMPILER: "gcc"
15 HOST: "mingw"
16 PLATFORM: "x64"
Yann Colletce34dc32020-12-16 23:53:13 -080017 SCRIPT: "make allzstd MOREFLAGS=-static"
Sean Purcell5a2b8572017-03-14 15:59:57 -070018 ARTIFACT: "true"
Sean Purcell8d2c6392017-03-24 11:45:02 -070019 BUILD: "true"
Sean Purcell5a2b8572017-03-14 15:59:57 -070020 - COMPILER: "gcc"
21 HOST: "mingw"
22 PLATFORM: "x86"
Yann Colletc7818fc2017-08-31 17:00:16 -070023 SCRIPT: "make allzstd MOREFLAGS=-static"
Sean Purcell5a2b8572017-03-14 15:59:57 -070024 ARTIFACT: "true"
Sean Purcell8d2c6392017-03-24 11:45:02 -070025 BUILD: "true"
Sean Purcell5a2b8572017-03-14 15:59:57 -070026 - COMPILER: "clang"
27 HOST: "mingw"
28 PLATFORM: "x64"
Yann Colletf2ac2b72020-12-21 15:43:14 -080029 SCRIPT: "MOREFLAGS='--target=x86_64-w64-mingw32 -Werror -Wconversion -Wno-sign-conversion' make -j allzstd V=1"
Sean Purcell8d2c6392017-03-24 11:45:02 -070030 BUILD: "true"
inikep5e334be2016-05-18 09:07:28 +020031
Sean Purcell5a2b8572017-03-14 15:59:57 -070032 - COMPILER: "gcc"
33 HOST: "mingw"
34 PLATFORM: "x64"
35 SCRIPT: ""
36 TEST: "cmake"
37
Sean Purcell5a2b8572017-03-14 15:59:57 -070038 - COMPILER: "visual"
39 HOST: "visual"
40 PLATFORM: "x64"
41 CONFIGURATION: "Debug"
42 - COMPILER: "visual"
43 HOST: "visual"
44 PLATFORM: "Win32"
45 CONFIGURATION: "Debug"
46 - COMPILER: "visual"
47 HOST: "visual"
48 PLATFORM: "x64"
49 CONFIGURATION: "Release"
50 - COMPILER: "visual"
51 HOST: "visual"
52 PLATFORM: "Win32"
53 CONFIGURATION: "Release"
54
Nick Hutchinson0dabbd42021-05-02 13:29:13 +010055 - COMPILER: "clang-cl"
56 HOST: "cmake-visual"
57 PLATFORM: "x64"
58 CONFIGURATION: "Release"
59 CMAKE_GENERATOR: "Visual Studio 15 2017"
60 CMAKE_GENERATOR_PLATFORM: "x64"
61 CMAKE_GENERATOR_TOOLSET: "LLVM"
62 APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
63
Sean Purcell5a2b8572017-03-14 15:59:57 -070064 install:
inikep96abb5a2016-05-19 15:50:58 +020065 - ECHO Installing %COMPILER% %PLATFORM% %CONFIGURATION%
Sean Purcell5a2b8572017-03-14 15:59:57 -070066 - SET PATH_ORIGINAL=%PATH%
67 - if [%HOST%]==[mingw] (
Sean Purcellfcc55cc2017-03-29 13:08:10 -070068 SET "PATH_MINGW32=C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin" &&
69 SET "PATH_MINGW64=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin" &&
70 COPY C:\msys64\usr\bin\make.exe C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin\make.exe &&
71 COPY C:\msys64\usr\bin\make.exe C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin\make.exe
Sean Purcell5a2b8572017-03-14 15:59:57 -070072 )
73 - IF [%HOST%]==[visual] IF [%PLATFORM%]==[x64] (
74 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;"
inikep5e334be2016-05-18 09:07:28 +020075 )
inikep7c4d0412016-05-16 14:48:04 +020076
Sean Purcell5a2b8572017-03-14 15:59:57 -070077 build_script:
78 - if [%HOST%]==[mingw] (
79 ( if [%PLATFORM%]==[x64] (
80 SET "PATH=%PATH_MINGW64%;%PATH_ORIGINAL%"
81 ) else if [%PLATFORM%]==[x86] (
82 SET "PATH=%PATH_MINGW32%;%PATH_ORIGINAL%"
Sean Purcell8d2c6392017-03-24 11:45:02 -070083 ) )
84 )
85 - if [%HOST%]==[mingw] if [%BUILD%]==[true] (
inikep0a0403d2016-07-19 12:23:32 +020086 make -v &&
Sean Purcell5a2b8572017-03-14 15:59:57 -070087 sh -c "%COMPILER% -v" &&
Sean Purcell8d2c6392017-03-24 11:45:02 -070088 ECHO Building zlib to static link &&
89 SET "CC=%COMPILER%" &&
90 sh -c "cd .. && git clone --depth 1 --branch v1.2.11 https://github.com/madler/zlib" &&
91 sh -c "cd ../zlib && make -f win32/Makefile.gcc libz.a"
92 ECHO Building zstd &&
93 SET "CPPFLAGS=-I../../zlib" &&
94 SET "LDFLAGS=../../zlib/libz.a" &&
95 sh -c "%SCRIPT%" &&
Sean Purcellfcc55cc2017-03-29 13:08:10 -070096 ( if [%COMPILER%]==[gcc] if [%ARTIFACT%]==[true]
Yann Collet92960812018-03-23 15:00:04 -070097 ECHO Creating artifacts &&
Yann Colleta75104d2018-03-23 16:27:28 -070098 ECHO %cd% &&
Sean Purcellfcc55cc2017-03-29 13:08:10 -070099 lib\dll\example\build_package.bat &&
Sean Purcelle128ac02017-04-06 10:15:32 -0700100 make -C programs DEBUGFLAGS= clean zstd &&
Yann Collet36153af2017-05-04 17:40:40 -0700101 cd programs\ && 7z a -tzip -mx9 zstd-win-binary-%PLATFORM%.zip zstd.exe &&
Yann Collet9203dab2017-05-04 17:30:37 -0700102 appveyor PushArtifact zstd-win-binary-%PLATFORM%.zip &&
Yann Collet36153af2017-05-04 17:40:40 -0700103 cp zstd.exe ..\bin\zstd.exe &&
Yann Collet0b395312020-12-16 23:00:35 -0800104 git clone --depth 1 --branch release https://github.com/facebook/zstd &&
Yann Colletfa294b82018-03-23 17:20:05 -0700105 cd zstd &&
Yann Collet0b395312020-12-16 23:00:35 -0800106 git archive --format=tar release -o zstd-src.tar &&
Yann Colletfa294b82018-03-23 17:20:05 -0700107 ..\zstd -19 zstd-src.tar &&
108 appveyor PushArtifact zstd-src.tar.zst &&
Yann Collet4d753b02018-03-24 09:55:13 -0700109 certUtil -hashfile zstd-src.tar.zst SHA256 > zstd-src.tar.zst.sha256.sig &&
110 appveyor PushArtifact zstd-src.tar.zst.sha256.sig &&
Yann Colletfa294b82018-03-23 17:20:05 -0700111 cd ..\..\bin\ &&
112 7z a -tzip -mx9 zstd-win-release-%PLATFORM%.zip * &&
Sean Purcellfcc55cc2017-03-29 13:08:10 -0700113 appveyor PushArtifact zstd-win-release-%PLATFORM%.zip
114 )
inikepf3302152016-05-18 16:38:36 +0200115 )
Sean Purcell5a2b8572017-03-14 15:59:57 -0700116 - if [%HOST%]==[visual] (
inikep5e334be2016-05-18 09:07:28 +0200117 ECHO *** &&
inikep70ce21f2016-08-10 14:17:28 +0200118 ECHO *** Building Visual Studio 2008 %PLATFORM%\%CONFIGURATION% in %APPVEYOR_BUILD_FOLDER% &&
inikep5e334be2016-05-18 09:07:28 +0200119 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200120 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" &&
121 DIR build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\*.exe &&
122 MD5sum build/VS2008/bin/%PLATFORM%/%CONFIGURATION%/*.exe &&
123 COPY build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2008_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200124 ECHO *** &&
125 ECHO *** Building Visual Studio 2010 %PLATFORM%\%CONFIGURATION% &&
126 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200127 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100128 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
129 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200130 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100131 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
132 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
133 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2010_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200134 ECHO *** &&
135 ECHO *** Building Visual Studio 2012 %PLATFORM%\%CONFIGURATION% &&
136 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200137 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100138 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
139 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200140 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100141 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
142 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
143 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2012_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200144 ECHO *** &&
145 ECHO *** Building Visual Studio 2013 %PLATFORM%\%CONFIGURATION% &&
146 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200147 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100148 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
149 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200150 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100151 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
152 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
153 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2013_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200154 ECHO *** &&
155 ECHO *** Building Visual Studio 2015 %PLATFORM%\%CONFIGURATION% &&
156 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200157 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100158 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
159 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200160 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" &&
Przemyslaw Skibinskicba727c2016-11-14 15:59:57 +0100161 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
162 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
163 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2015_%PLATFORM%_%CONFIGURATION%.exe &&
164 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe tests\
inikep5e334be2016-05-18 09:07:28 +0200165 )
Nick Hutchinson0dabbd42021-05-02 13:29:13 +0100166 - if [%HOST%]==[cmake-visual] (
167 ECHO *** &&
168 ECHO *** Building %CMAKE_GENERATOR% ^(%CMAKE_GENERATOR_TOOLSET%^) %PLATFORM%\%CONFIGURATION% &&
169 PUSHD build\cmake &&
170 cmake -DBUILD_TESTING=ON . &&
171 cmake --build . --config %CONFIGURATION% -j4 &&
172 POPD &&
173 ECHO ***
174 )
inikep7c4d0412016-05-16 14:48:04 +0200175
Sean Purcell5a2b8572017-03-14 15:59:57 -0700176 test_script:
inikep96abb5a2016-05-19 15:50:58 +0200177 - ECHO Testing %COMPILER% %PLATFORM% %CONFIGURATION%
Sean Purcelldd79c5c2017-03-29 14:40:11 -0700178 - SET "CC=gcc"
179 - SET "CXX=g++"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700180 - if [%TEST%]==[cmake] (
Przemyslaw Skibinskicb8d2d92017-02-10 12:01:14 +0100181 mkdir build\cmake\build &&
182 cd build\cmake\build &&
Nick Terrellbc3cda92020-12-10 13:33:34 -0800183 SET FUZZERTEST=-T2mn &&
184 SET ZSTREAM_TESTTIME=-T2mn &&
Przemyslaw Skibinskicb8d2d92017-02-10 12:01:14 +0100185 cmake -G "Visual Studio 14 2015 Win64" .. &&
186 cd ..\..\.. &&
Sean Purcell5a2b8572017-03-14 15:59:57 -0700187 make clean
188 )
Yann Colletc6915422017-04-27 16:24:53 -0700189 - SET "FUZZERTEST=-T30s"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700190 - if [%HOST%]==[visual] if [%CONFIGURATION%]==[Release] (
inikep7feafdd2016-08-18 15:17:18 +0200191 CD tests &&
Yann Collet306e9222020-05-21 18:06:43 -0700192 SET ZSTD_BIN=./zstd.exe&&
193 SET DATAGEN_BIN=./datagen.exe&&
inikep1dcb2ff2016-05-30 11:33:52 +0200194 sh -e playTests.sh --test-large-data &&
inikepd57b4182016-05-31 11:46:16 +0200195 fullbench.exe -i1 &&
196 fullbench.exe -i1 -P0 &&
inikep7feafdd2016-08-18 15:17:18 +0200197 fuzzer_VS2012_%PLATFORM%_Release.exe %FUZZERTEST% &&
198 fuzzer_VS2013_%PLATFORM%_Release.exe %FUZZERTEST% &&
199 fuzzer_VS2015_%PLATFORM%_Release.exe %FUZZERTEST%
inikep5e334be2016-05-18 09:07:28 +0200200 )
inikepe9ae30a2016-09-12 14:17:26 +0200201
Yann Collet03ef7b72019-10-18 14:52:16 -0700202
203# The following tests are for regular pushes
204# into `dev` or some feature branch
205# There run less tests, for shorter feedback loop
206
Sean Purcell5a2b8572017-03-14 15:59:57 -0700207-
208 version: 1.0.{build}
Sean Purcell5a2b8572017-03-14 15:59:57 -0700209 environment:
210 matrix:
211 - COMPILER: "gcc"
Christoph Reiter9a5d8a62020-01-11 10:41:56 +0100212 HOST: "cygwin"
213 PLATFORM: "x64"
214 - COMPILER: "gcc"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700215 HOST: "mingw"
216 PLATFORM: "x64"
Yann Collet01ecad22020-10-21 23:13:46 -0700217 SCRIPT: "CFLAGS=-Werror make -j allzstd DEBUGLEVEL=2"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700218 - COMPILER: "gcc"
219 HOST: "mingw"
220 PLATFORM: "x86"
cyan4973e85b4c52018-07-30 17:08:40 +0200221 SCRIPT: "CFLAGS=-Werror make -j allzstd"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700222 - COMPILER: "clang"
223 HOST: "mingw"
224 PLATFORM: "x64"
Yann Colletf2ac2b72020-12-21 15:43:14 -0800225 SCRIPT: "CFLAGS='--target=x86_64-w64-mingw32 -Werror -Wconversion -Wno-sign-conversion' make -j allzstd V=1"
Sean Purcelldaec40d2017-03-07 12:08:15 -0800226
Sean Purcell5a2b8572017-03-14 15:59:57 -0700227 - COMPILER: "visual"
228 HOST: "visual"
229 PLATFORM: "x64"
230 CONFIGURATION: "Debug"
231 - COMPILER: "visual"
232 HOST: "visual"
233 PLATFORM: "Win32"
234 CONFIGURATION: "Debug"
235 - COMPILER: "visual"
236 HOST: "visual"
237 PLATFORM: "x64"
238 CONFIGURATION: "Release"
239 - COMPILER: "visual"
240 HOST: "visual"
241 PLATFORM: "Win32"
242 CONFIGURATION: "Release"
inikepe9ae30a2016-09-12 14:17:26 +0200243
Nick Hutchinson0dabbd42021-05-02 13:29:13 +0100244 - COMPILER: "clang-cl"
245 HOST: "cmake-visual"
246 PLATFORM: "x64"
247 CONFIGURATION: "Release"
248 CMAKE_GENERATOR: "Visual Studio 15 2017"
249 CMAKE_GENERATOR_PLATFORM: "x64"
250 CMAKE_GENERATOR_TOOLSET: "LLVM"
251 APPVEYOR_BUILD_WORKER_IMAGE: "Visual Studio 2017"
252
Sean Purcell5a2b8572017-03-14 15:59:57 -0700253 install:
254 - ECHO Installing %COMPILER% %PLATFORM% %CONFIGURATION%
255 - SET PATH_ORIGINAL=%PATH%
Christoph Reiter9a5d8a62020-01-11 10:41:56 +0100256 - if [%HOST%]==[cygwin] (
257 ECHO Installing Cygwin Packages &&
258 C:\cygwin64\setup-x86_64.exe -qnNdO -R "C:\cygwin64" -g -P ^
Christoph Reiter9a5d8a62020-01-11 10:41:56 +0100259 gcc,^
260 cmake,^
261 make
262 )
Sean Purcell5a2b8572017-03-14 15:59:57 -0700263 - if [%HOST%]==[mingw] (
Sean Purcellad8da882017-04-13 14:40:06 -0700264 SET "PATH_MINGW32=C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin" &&
265 SET "PATH_MINGW64=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin" &&
266 COPY C:\msys64\usr\bin\make.exe C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin\make.exe &&
267 COPY C:\msys64\usr\bin\make.exe C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin\make.exe
Sean Purcell5a2b8572017-03-14 15:59:57 -0700268 )
269 - IF [%HOST%]==[visual] IF [%PLATFORM%]==[x64] (
270 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;"
271 )
272
273 build_script:
274 - ECHO Building %COMPILER% %PLATFORM% %CONFIGURATION%
Christoph Reiter9a5d8a62020-01-11 10:41:56 +0100275 - if [%HOST%]==[cygwin] (
276 set CHERE_INVOKING=yes &&
277 set CC=%COMPILER% &&
278 C:\cygwin64\bin\bash --login -c "
279 set -e;
280 cd build/cmake;
Yann Collet17b9e432021-05-06 21:53:30 -0700281 CFLAGS='-Werror' cmake -G 'Unix Makefiles' -DCMAKE_BUILD_TYPE=Debug -DZSTD_BUILD_TESTS:BOOL=ON -DZSTD_FUZZER_FLAGS=-T20s -DZSTD_ZSTREAM_FLAGS=-T20s -DZSTD_FULLBENCH_FLAGS=-i0 .;
Yann Colletbd547232021-05-06 16:07:44 -0700282 make VERBOSE=1 -j;
Taylor Braun-Jones5b054d92020-03-23 16:08:52 -0400283 ctest -V -L Medium;
Christoph Reiter9a5d8a62020-01-11 10:41:56 +0100284 "
285 )
Sean Purcell5a2b8572017-03-14 15:59:57 -0700286 - if [%HOST%]==[mingw] (
287 ( if [%PLATFORM%]==[x64] (
288 SET "PATH=%PATH_MINGW64%;%PATH_ORIGINAL%"
289 ) else if [%PLATFORM%]==[x86] (
290 SET "PATH=%PATH_MINGW32%;%PATH_ORIGINAL%"
291 ) ) &&
292 make -v &&
293 sh -c "%COMPILER% -v" &&
Sean Purcell5a61f362017-04-14 11:33:04 -0700294 set "CC=%COMPILER%" &&
295 sh -c "%SCRIPT%"
Sean Purcell5a2b8572017-03-14 15:59:57 -0700296 )
297 - if [%HOST%]==[visual] (
298 ECHO *** &&
299 ECHO *** Building Visual Studio 2015 %PLATFORM%\%CONFIGURATION% &&
300 ECHO *** &&
301 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" &&
302 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
303 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
304 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" &&
305 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
306 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
307 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2015_%PLATFORM%_%CONFIGURATION%.exe &&
308 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe tests\
309 )
Nick Hutchinson0dabbd42021-05-02 13:29:13 +0100310 - if [%HOST%]==[cmake-visual] (
311 ECHO *** &&
312 ECHO *** Building %CMAKE_GENERATOR% ^(%CMAKE_GENERATOR_TOOLSET%^) %PLATFORM%\%CONFIGURATION% &&
313 PUSHD build\cmake &&
314 cmake -DBUILD_TESTING=ON . &&
315 cmake --build . --config %CONFIGURATION% -j4 &&
316 POPD &&
317 ECHO ***
318 )
Yann Collet03ef7b72019-10-18 14:52:16 -0700319
320
321 test_script:
322 - ECHO Testing %COMPILER% %PLATFORM% %CONFIGURATION%
323 - if [%HOST%]==[mingw] (
Yann Collet0e154fc2019-10-18 15:02:30 -0700324 set "CC=%COMPILER%" &&
Yann Colletde985b12020-10-16 14:31:40 -0700325 make clean &&
Bimba Shrestha4a9eca42019-10-29 09:45:28 -0700326 make check
Yann Collet03ef7b72019-10-18 14:52:16 -0700327 )