blob: aeb9d591a3a7b75690e709d889de29e1af26d44c [file] [log] [blame]
Roger Meierdf71a2e2015-04-09 01:06:49 +02001# Licensed to the Apache Software Foundation (ASF) under one
2# or more contributor license agreements. See the NOTICE file
3# distributed with this work for additional information
4# regarding copyright ownership. The ASF licenses this file
5# to you under the Apache License, Version 2.0 (the
6# "License"); you may not use this file except in compliance
7# with the License. You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing,
12# software distributed under the License is distributed on an
13# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14# KIND, either express or implied. See the License for the
15# specific language governing permissions and limitations
16# under the License.
17#
18
19# build Apache Thrift on AppVeyor - https://ci.appveyor.com
20
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090021shallow_clone: true
22clone_depth: 10
23
Roger Meierdf71a2e2015-04-09 01:06:49 +020024version: '{build}'
25os:
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090026# - Windows Server 2012 R2
27- Visual Studio 2015
Roger Meierdf71a2e2015-04-09 01:06:49 +020028
29environment:
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090030 BOOST_ROOT: C:\Libraries\boost_1_59_0
31 BOOST_LIBRARYDIR: C:\Libraries\boost_1_59_0\lib64-msvc-14.0
Nobuaki Sukegawa8ccf5a62016-09-28 05:05:02 +090032 # Unfurtunately, this version needs manual update because old versions are quickly deleted.
James E. King, IIIfac3f692017-01-04 21:46:23 -050033 ANT_VERSION: 1.9.8
Roger Meierdf71a2e2015-04-09 01:06:49 +020034
Roger Meier5d0a8062015-04-12 21:06:11 +020035install:
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090036- '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64'
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090037- cd \
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090038 # Zlib
39- appveyor DownloadFile https://github.com/madler/zlib/archive/v1.2.8.tar.gz
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090040- 7z x v1.2.8.tar.gz -so | 7z x -si -ttar > nul
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090041- cd zlib-1.2.8
42- cmake -G "Visual Studio 14 2015 Win64" .
43- cmake --build . --config release
44- cd ..
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090045 # Libevent
46- appveyor DownloadFile https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090047- 7z x libevent-2.0.22-stable.tar.gz -so | 7z x -si -ttar > nul
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090048- cd libevent-2.0.22-stable
49- nmake -f Makefile.nmake
50- mkdir lib
51- move *.lib lib\
52- move WIN32-Code\event2\* include\event2\
53- move *.h include\
54- cd ..
James E. King, IIIbdd0b732017-02-08 12:27:57 -050055- appveyor-retry cinst -y ant
56- appveyor-retry cinst -y winflexbison3
57## appveyor DownloadFile http://www.us.apache.org/dist/ant/binaries/apache-ant-%ANT_VERSION%-bin.zip
58# 7z x apache-ant-%ANT_VERSION%-bin.zip > nul
Nobuaki Sukegawaaa7d0d52016-02-27 03:04:34 +090059- cd %APPVEYOR_BUILD_FOLDER%
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090060# TODO: Enable Haskell build
61# - cinst HaskellPlatform -version 2014.2.0.0
62
Roger Meierdf71a2e2015-04-09 01:06:49 +020063
64build_script:
James E. King, IIIbdd0b732017-02-08 12:27:57 -050065- echo PATH=%PATH%
66- set PATH=C:\ProgramData\chocolatey\bin;%PATH%
67## installation of ant brings in the latest jdk and sets JAVA_HOME
68- echo JAVA_HOME=%JAVA_HOME%
69## set JAVA_HOME=C:\Program Files\Java\jdk1.7.0
70## set PATH=%JAVA_HOME%\bin;%PATH%
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090071# - set PATH=%PATH%;C:\Program Files (x86)\Haskell Platform\2014.2.0.0\bin
72# - set PATH=%PATH%;C:\Program Files (x86)\Haskell Platform\2014.2.0.0\lib\extralibs\bin
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090073- set PATH=C:\Python27-x64\scripts;C:\Python27-x64;%PATH%
Nobuaki Sukegawabf9fa902016-09-04 18:49:21 +090074- pip install ipaddress backports.ssl_match_hostname tornado twisted
Roger Meierdf71a2e2015-04-09 01:06:49 +020075- mkdir cmake-build
76- cd cmake-build
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090077- cmake -G "Visual Studio 14 2015 Win64" -DWITH_SHARED_LIB=OFF -DLIBEVENT_ROOT=C:\libevent-2.0.22-stable -DZLIB_INCLUDE_DIR=C:\zlib-1.2.8 -DZLIB_LIBRARY=C:\zlib-1.2.8\release\zlibstatic.lib -DBOOST_ROOT="%BOOST_ROOT%" -DBOOST_LIBRARYDIR="%BOOST_LIBRARYDIR%" ..
Nobuaki Sukegawaaa7d0d52016-02-27 03:04:34 +090078- findstr /b /e BUILD_COMPILER:BOOL=ON CMakeCache.txt
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090079- findstr /b /e BUILD_CPP:BOOL=ON CMakeCache.txt
Nobuaki Sukegawaaa7d0d52016-02-27 03:04:34 +090080- findstr /b /e BUILD_JAVA:BOOL=ON CMakeCache.txt
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090081- findstr /b /e BUILD_PYTHON:BOOL=ON CMakeCache.txt
82# - findstr /b /e BUILD_C_GLIB:BOOL=ON CMakeCache.txt
83# - findstr /b /e BUILD_HASKELL:BOOL=ON CMakeCache.txt
Nobuaki Sukegawaaa7d0d52016-02-27 03:04:34 +090084- findstr /b /e BUILD_TESTING:BOOL=ON CMakeCache.txt
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090085# - cmake --build .
Roger Meierdf71a2e2015-04-09 01:06:49 +020086- cmake --build . --config Release
Nobuaki Sukegawae8c71d82015-11-23 19:51:37 +090087# TODO: Fix cpack
88# - cpack
Nobuaki Sukegawa1425c5a2016-02-28 12:26:48 +090089# TODO: Run more tests
90# CTest fails to invoke ant seemingly due to "ant.bat" v.s. "ant" (shell script) conflict.
91# Currently, everything that involves OpenSSL seems to hang forever on our Appveyor setup.
92# Also a few C++ tests hang (on Appveyor or on Windows in general).
James E. King, IIIdf899132016-11-12 15:16:30 -050093- ctest -C Release --timeout 600 -VV -E "(StressTestNonBlocking|PythonTestSSLSocket|python_test$|^Java)"
94# TODO make it perfect ;-r