blob: e131b2ca1b2078d5c3c4c7d6eb58b037bb58b25c [file] [log] [blame]
inikep03bf5ad2016-05-09 14:04:40 +02001version: 1.0.{build}
inikep5e334be2016-05-18 09:07:28 +02002environment:
3 matrix:
inikep96abb5a2016-05-19 15:50:58 +02004 - COMPILER: "gcc"
inikepf3302152016-05-18 16:38:36 +02005 MAKE_PARAMS: "test"
6 PLATFORM: "mingw64"
inikep5d589562016-05-25 10:50:28 +02007 - COMPILER: "gcc"
8 MAKE_PARAMS: "test"
9 PLATFORM: "mingw32"
inikepe9ae30a2016-09-12 14:17:26 +020010 - COMPILER: "visual"
11 CONFIGURATION: "Debug"
12 PLATFORM: "x64"
13 - COMPILER: "visual"
14 CONFIGURATION: "Debug"
15 PLATFORM: "Win32"
16 - COMPILER: "visual"
17 CONFIGURATION: "Release"
18 PLATFORM: "x64"
19 - COMPILER: "visual"
20 CONFIGURATION: "Release"
21 PLATFORM: "Win32"
inikep5e334be2016-05-18 09:07:28 +020022
23install:
inikep96abb5a2016-05-19 15:50:58 +020024 - ECHO Installing %COMPILER% %PLATFORM% %CONFIGURATION%
inikepe9ae30a2016-09-12 14:17:26 +020025 - MKDIR bin
inikep96abb5a2016-05-19 15:50:58 +020026 - if [%COMPILER%]==[gcc] SET PATH_ORIGINAL=%PATH%
27 - if [%COMPILER%]==[gcc] (
inikep2d5eb2b2016-08-18 13:53:26 +020028 SET "CLANG_PARAMS=-C tests zstd fullbench fuzzer zbufftest paramgrill datagen CC=clang MOREFLAGS="--target=x86_64-w64-mingw32 -Werror -Wconversion -Wno-sign-conversion"" &&
inikep5e334be2016-05-18 09:07:28 +020029 SET "PATH_MINGW32=c:\MinGW\bin;c:\MinGW\usr\bin" &&
30 SET "PATH_MINGW64=c:\msys64\mingw64\bin;c:\msys64\usr\bin" &&
inikep0a0403d2016-07-19 12:23:32 +020031 COPY C:\MinGW\bin\mingw32-make.exe C:\MinGW\bin\make.exe &&
32 COPY C:\MinGW\bin\gcc.exe C:\MinGW\bin\cc.exe
inikep5e334be2016-05-18 09:07:28 +020033 ) else (
inikep44bb2f62016-05-19 12:16:14 +020034 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;")
inikep5e334be2016-05-18 09:07:28 +020035 )
inikep7c4d0412016-05-16 14:48:04 +020036
inikep03bf5ad2016-05-09 14:04:40 +020037build_script:
inikep96abb5a2016-05-19 15:50:58 +020038 - ECHO Building %COMPILER% %PLATFORM% %CONFIGURATION%
Yann Collet4c9a4c12016-09-19 14:58:14 +020039 - if [%PLATFORM%]==[mingw32] SET PATH=%PATH_MINGW32%;%PATH_ORIGINAL%
40 - if [%PLATFORM%]==[mingw64] SET PATH=%PATH_MINGW64%;%PATH_ORIGINAL%
inikepf3302152016-05-18 16:38:36 +020041 - if [%PLATFORM%]==[mingw64] (
inikep5e334be2016-05-18 09:07:28 +020042 make clean &&
43 ECHO *** &&
44 ECHO *** Building clang &&
45 ECHO *** &&
46 ECHO make %CLANG_PARAMS% &&
47 make %CLANG_PARAMS% &&
inikep7feafdd2016-08-18 15:17:18 +020048 COPY tests\fuzzer.exe tests\fuzzer_clang.exe &&
Nick Terrellb3ed23e2016-09-06 14:00:55 -070049 make clean &&
50 ECHO *** &&
51 ECHO *** Building pzstd for %PLATFORM% &&
52 ECHO *** &&
Nick Terrellcd5c52f2016-09-22 19:00:54 -070053 make -C contrib\pzstd googletest-mingw64 &&
Nick Terrell8b4e8422016-10-06 18:17:08 -070054 make -C contrib\pzstd all &&
55 make -C contrib\pzstd check &&
Nick Terrellb3ed23e2016-09-06 14:00:55 -070056 make -C contrib\pzstd clean
inikep5e334be2016-05-18 09:07:28 +020057 )
inikep96abb5a2016-05-19 15:50:58 +020058 - if [%COMPILER%]==[gcc] (
inikepf3302152016-05-18 16:38:36 +020059 ECHO *** &&
60 ECHO *** Building %PLATFORM% &&
61 ECHO *** &&
inikep0a0403d2016-07-19 12:23:32 +020062 make -v &&
63 cc -v &&
inikepf3302152016-05-18 16:38:36 +020064 ECHO make %MAKE_PARAMS% &&
inikepe9ae30a2016-09-12 14:17:26 +020065 make %MAKE_PARAMS%
inikepf3302152016-05-18 16:38:36 +020066 )
inikepe9ae30a2016-09-12 14:17:26 +020067 - if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw64] (
68 COPY programs\zstd.exe bin\zstd.exe &&
69 appveyor PushArtifact bin\zstd.exe
70 )
71 - if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw32] (
72 COPY programs\zstd.exe bin\zstd32.exe &&
73 appveyor PushArtifact bin\zstd32.exe
74 )
75 - if [%COMPILER%]==[gcc] make clean
inikep96abb5a2016-05-19 15:50:58 +020076 - if [%COMPILER%]==[visual] (
inikep5e334be2016-05-18 09:07:28 +020077 ECHO *** &&
inikep70ce21f2016-08-10 14:17:28 +020078 ECHO *** Building Visual Studio 2008 %PLATFORM%\%CONFIGURATION% in %APPVEYOR_BUILD_FOLDER% &&
inikep5e334be2016-05-18 09:07:28 +020079 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +020080 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" &&
81 DIR build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\*.exe &&
82 MD5sum build/VS2008/bin/%PLATFORM%/%CONFIGURATION%/*.exe &&
83 COPY build\VS2008\bin\%PLATFORM%\%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2008_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +020084 ECHO *** &&
85 ECHO *** Building Visual Studio 2010 %PLATFORM%\%CONFIGURATION% &&
86 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +020087 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 +010088 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
89 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +020090 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 +010091 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
92 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
93 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2010_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +020094 ECHO *** &&
95 ECHO *** Building Visual Studio 2012 %PLATFORM%\%CONFIGURATION% &&
96 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +020097 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 +010098 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
99 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200100 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 +0100101 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
102 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
103 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2012_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200104 ECHO *** &&
105 ECHO *** Building Visual Studio 2013 %PLATFORM%\%CONFIGURATION% &&
106 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200107 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 +0100108 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
109 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200110 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 +0100111 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
112 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
113 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2013_%PLATFORM%_%CONFIGURATION%.exe &&
inikep5e334be2016-05-18 09:07:28 +0200114 ECHO *** &&
115 ECHO *** Building Visual Studio 2015 %PLATFORM%\%CONFIGURATION% &&
116 ECHO *** &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200117 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 +0100118 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
119 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
Yann Collet4c9a4c12016-09-19 14:58:14 +0200120 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 +0100121 DIR build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe &&
122 MD5sum build/VS2010/bin/%PLATFORM%_%CONFIGURATION%/*.exe &&
123 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\fuzzer.exe tests\fuzzer_VS2015_%PLATFORM%_%CONFIGURATION%.exe &&
124 COPY build\VS2010\bin\%PLATFORM%_%CONFIGURATION%\*.exe tests\
inikep5e334be2016-05-18 09:07:28 +0200125 )
inikep7c4d0412016-05-16 14:48:04 +0200126
inikep03bf5ad2016-05-09 14:04:40 +0200127test_script:
inikep96abb5a2016-05-19 15:50:58 +0200128 - ECHO Testing %COMPILER% %PLATFORM% %CONFIGURATION%
inikep5e334be2016-05-18 09:07:28 +0200129 - SET FUZZERTEST=-T1mn
inikep96abb5a2016-05-19 15:50:58 +0200130 - if [%COMPILER%]==[gcc] (
inikep7feafdd2016-08-18 15:17:18 +0200131 if [%PLATFORM%]==[mingw64] tests\fuzzer_clang.exe %FUZZERTEST%
inikep5e334be2016-05-18 09:07:28 +0200132 )
inikep96abb5a2016-05-19 15:50:58 +0200133 - if [%COMPILER%]==[visual] if [%CONFIGURATION%]==[Release] (
inikep7feafdd2016-08-18 15:17:18 +0200134 CD tests &&
inikep1dcb2ff2016-05-30 11:33:52 +0200135 SET ZSTD=./zstd.exe &&
inikep1dcb2ff2016-05-30 11:33:52 +0200136 sh -e playTests.sh --test-large-data &&
inikepd57b4182016-05-31 11:46:16 +0200137 fullbench.exe -i1 &&
138 fullbench.exe -i1 -P0 &&
inikep7feafdd2016-08-18 15:17:18 +0200139 fuzzer_VS2008_%PLATFORM%_Release.exe %FUZZERTEST% &&
140 fuzzer_VS2010_%PLATFORM%_Release.exe %FUZZERTEST% &&
141 fuzzer_VS2012_%PLATFORM%_Release.exe %FUZZERTEST% &&
142 fuzzer_VS2013_%PLATFORM%_Release.exe %FUZZERTEST% &&
143 fuzzer_VS2015_%PLATFORM%_Release.exe %FUZZERTEST%
inikep5e334be2016-05-18 09:07:28 +0200144 )
inikepe9ae30a2016-09-12 14:17:26 +0200145
146artifacts:
147 - path: bin\zstd.exe
Yann Collet4c9a4c12016-09-19 14:58:14 +0200148 - path: bin\zstd32.exe
inikepe9ae30a2016-09-12 14:17:26 +0200149
150deploy:
151- provider: GitHub
152 auth_token:
153 secure: LgJo8emYc3sFnlNWkGl4/VYK3nk/8+RagcsqDlAi3xeqNGNutnKjcftjg84uJoT4
154 artifact: bin\zstd.exe
155 force_update: true
156 on:
157 branch: autobuild
158 COMPILER: gcc
159 PLATFORM: "mingw64"
160 appveyor_repo_tag: true
161- provider: GitHub
162 auth_token:
163 secure: LgJo8emYc3sFnlNWkGl4/VYK3nk/8+RagcsqDlAi3xeqNGNutnKjcftjg84uJoT4
Yann Collet4c9a4c12016-09-19 14:58:14 +0200164 artifact: bin\zstd32.exe
inikepe9ae30a2016-09-12 14:17:26 +0200165 force_update: true
166 on:
167 branch: autobuild
168 COMPILER: gcc
169 PLATFORM: "mingw32"
170 appveyor_repo_tag: true