blob: e22a8c6899fab5d2d3f62b33e2bb0064211a70b0 [file] [log] [blame]
Eugene Kliuchnikov6b1d0ab2017-09-18 13:05:47 +02001branches:
2 only:
3 - master
4
Cosimo Lupo06300902015-08-11 12:15:03 +01005environment:
Cosimo Lupo06300902015-08-11 12:15:03 +01006 matrix:
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +02007 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
8 BUILD_SYSTEM: CMake
9 GENERATOR: Visual Studio 15 2017 Win64
10 CONFIG: Release
11
12 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
13 BUILD_SYSTEM: CMake
14 GENERATOR: Visual Studio 15 2017 Win64
15 CONFIG: Debug
16
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020017 - BUILD_SYSTEM: CMake
18 GENERATOR: Visual Studio 14 2015 Win64
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +020019 CONFIG: Debug
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070020
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020021 - BUILD_SYSTEM: CMake
22 GENERATOR: Visual Studio 14 2015
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +020023 CONFIG: Debug
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070024
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020025 - BUILD_SYSTEM: Python
26 PYTHON: "C:\\Python27"
27 PYTHON_VERSION: "2.7.x"
28 PYTHON_ARCH: "32"
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070029
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020030 - BUILD_SYSTEM: Python
31 PYTHON: "C:\\Python36-x64"
32 PYTHON_VERSION: "3.6.x"
33 PYTHON_ARCH: "64"
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070034
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020035 - BUILD_SYSTEM: make
36 ARCH: "i686"
Cosimo Lupo06300902015-08-11 12:15:03 +010037
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020038 - BUILD_SYSTEM: make
39 ARCH: "x86_64"
Cosimo Lupo33331762015-10-07 09:18:01 +010040
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020041 - BUILD_SYSTEM: bazel
42
Cosimo Lupo06300902015-08-11 12:15:03 +010043install:
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020044- IF "%BUILD_SYSTEM%"=="Python" (
45 SET "PATH=%PYTHON%;%PYTHON%\Scripts;%PATH%" &&
Cosimo Lupof94cd512018-04-20 18:31:51 +010046 python -m pip install --upgrade pip &&
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020047 pip install --upgrade setuptools
48 )
49- IF "%BUILD_SYSTEM%"=="make" (
50 IF "%ARCH%"=="i686" (
51 SET "TOOLCHAIN=i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32"
52 ) ELSE (
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +020053 SET "TOOLCHAIN=x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64"
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020054 )
55 )
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020056- IF "%BUILD_SYSTEM%"=="bazel" (
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020057 appveyor DownloadFile https://github.com/bazelbuild/bazel/releases/download/0.18.0/bazel-0.18.0-windows-x86_64.exe -FileName bazel.exe
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020058 )
Cosimo Lupo06300902015-08-11 12:15:03 +010059
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070060before_build:
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020061- FOR /f %%i in ('C:\cygwin64\bin\date.exe +%%Y-%%m-%%d') DO SET "RELEASE_DATE=%%i"
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020062- IF "%BUILD_SYSTEM%"=="CMake" ( mkdir builddir && cd builddir && cmake -G "%GENERATOR%" .. )
63- IF "%BUILD_SYSTEM%"=="make" (
64 SET "CC=gcc" &&
65 SET "PATH=C:\mingw-w64\%TOOLCHAIN%\bin;%PATH%" &&
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020066 COPY C:\msys64\usr\bin\make.exe C:\mingw-w64\%TOOLCHAIN%\bin\make.exe
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020067 )
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020068- SET "ROOT=%APPVEYOR_BUILD_FOLDER%"
Evan Nemersonc1ec7ba2016-07-29 11:52:15 -070069
70build_script:
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +020071- IF "%BUILD_SYSTEM%"=="CMake" ( cmake --build . --config %CONFIG% )
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020072- IF "%BUILD_SYSTEM%"=="Python" ( python setup.py build_ext )
73- IF "%BUILD_SYSTEM%"=="make" (
74 sh -c "make brotli" &&
Eugene Kliuchnikov6b1d0ab2017-09-18 13:05:47 +020075 cd bin && 7z a -tzip -mx9 brotli-win-%ARCH%-%RELEASE_DATE%.zip brotli.exe &&
76 appveyor PushArtifact brotli-win-%ARCH%-%RELEASE_DATE%.zip && cd ..
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020077 )
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020078- IF "%BUILD_SYSTEM%"=="bazel" (
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020079 cd java &&
80 %ROOT%\bazel.exe --batch build -c opt org/brotli/wrapper/...:all &&
81 python %ROOT%\scripts\fix-win-bazel-build.py &&
82 cd bazel-bin &&
83 7z a -tzip -mx9 brotli-win-bazel-jni-%RELEASE_DATE%.zip brotli_jni.dll &&
84 appveyor PushArtifact brotli-win-bazel-jni-%RELEASE_DATE%.zip &&
85 cd .. &&
86 cd ..
Eugene Kliuchnikov9c75a2a2017-10-11 22:26:37 +020087 )
Cosimo Lupo06300902015-08-11 12:15:03 +010088
89test_script:
Eugene Kliuchnikovff05c352018-06-18 13:13:23 +020090- IF "%BUILD_SYSTEM%"=="CMake" ( ctest --output-on-failure --interactive-debug-mode 0 -C %CONFIG% )
Eugene Kliuchnikov26a34a42017-09-14 16:14:05 +020091- IF "%BUILD_SYSTEM%"=="Python" ( python setup.py test )
92- IF "%BUILD_SYSTEM%"=="make" ( sh -c "make test" )
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020093- IF "%BUILD_SYSTEM%"=="bazel" (
94 cd java &&
95 %ROOT%\bazel.exe --batch test -c opt --test_output streamed org/brotli/wrapper/...:all &&
96 cd ..
97 )
Eugene Kliuchnikov6b1d0ab2017-09-18 13:05:47 +020098
99deploy:
100- provider: BinTray
101 on:
102 branch: master
103 username: eustas
104 api_key:
105 secure: B3rM8JYeIHIw6BfOjHggAeyTmxEf8ZDYmyF9gCwqyWaxyxECD9BuN50SiV2KE/RI
106 subject: eustas
107 repo: brotli
108 package: bin
109 version: snapshot
110 publish: true
111 override: true