summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuaki Sukegawa <nsuke@apache.org>2016-02-22 21:29:13 +0900
committerNobuaki Sukegawa <nsuke@apache.org>2016-03-06 09:46:33 +0900
commitc40018b28f40d5dfd41f9e3de1198d70ec0b6eca (patch)
tree9c85d9065c659763452caf1c14b2f5b7ca5fe942
parented23b2b4ce796602ac073ec07582b9a19f5f02e4 (diff)
downloadthrift-c40018b28f40d5dfd41f9e3de1198d70ec0b6eca.tar.gz
THRIFT-3659 Check configure result of CMake on CI
This closes #886
-rw-r--r--.travis.yml11
-rw-r--r--build/cmake/DefineOptions.cmake2
-rwxr-xr-xbuild/docker/scripts/cmake.sh6
3 files changed, 17 insertions, 2 deletions
diff --git a/.travis.yml b/.travis.yml
index 10da1f93a..8b708895b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -31,7 +31,7 @@ install:
- travis_retry travis_wait docker build -q -t thrift-build build/docker/$DISTRO
script:
- - docker run $BUILD_ENV -v $(pwd):/thrift/src -it thrift-build $BUILD_CMD $BUILD_ARG
+ - docker run -e BUILD_LIBS="$BUILD_LIBS" $BUILD_ENV -v $(pwd):/thrift/src -it thrift-build $BUILD_CMD $BUILD_ARG
env:
global:
@@ -40,6 +40,7 @@ env:
- BUILD_ARG=""
- BUILD_ENV="-e CC=clang -e CXX=clang++"
- DISTRO=ubuntu
+ - BUILD_LIBS="CPP C_GLIB HASKELL JAVA PYTHON TESTING TUTORIALS" # only meaningful for CMake builds
matrix:
# TODO: Break up by protocol types to avoid 50min limit
@@ -84,29 +85,35 @@ env:
- TEST_NAME="C C++ - GCC"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP C_GLIB TESTING TUTORIALS"
BUILD_ARG="-DWITH_PYTHON=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
BUILD_ENV="-e CC=gcc -e CXX=g++"
- TEST_NAME="C++ (Boost Thread)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP TESTING TUTORIALS"
BUILD_ARG="-DWITH_BOOSTTHREADS=ON -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
- TEST_NAME="C++ (Boost Thread - GCC)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP TESTING TUTORIALS"
BUILD_ARG="-DWITH_BOOSTTHREADS=ON -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
BUILD_ENV="-e CC=gcc -e CXX=g++"
- TEST_NAME="C++ (Std Thread)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP TESTING TUTORIALS"
BUILD_ARG="-DWITH_STDTHREADS=ON -DCMAKE_CXX_FLAGS='-std=c++11' -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
- TEST_NAME="C++ (Std Thread - GCC)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP TESTING TUTORIALS"
BUILD_ARG="-DWITH_STDTHREADS=ON -DCMAKE_CXX_FLAGS='-std=c++11' -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
BUILD_ENV="-e CC=gcc -e CXX=g++"
- TEST_NAME="Compiler (mingw)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS=""
BUILD_ARG="-DCMAKE_TOOLCHAIN_FILE=../build/cmake/mingw32-toolchain.cmake -DBUILD_COMPILER=ON -DBUILD_LIBRARIES=OFF -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF"
BUILD_ENV=""
@@ -117,11 +124,13 @@ env:
- TEST_NAME="C C++ - Clang (CentOS)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="CPP C_GLIB TESTING TUTORIALS"
BUILD_ARG="-DWITH_PYTHON=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
DISTRO=centos
- TEST_NAME="Python 2.6 (CentOS 6)"
BUILD_CMD="../cmake.sh"
+ BUILD_LIBS="PYTHON TESTING TUTORIALS"
BUILD_ARG="-DWITH_PYTHON=ON -DWITH_CPP=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
BUILD_ENV="-e CC=gcc -e CXX=g++"
DISTRO=centos6
diff --git a/build/cmake/DefineOptions.cmake b/build/cmake/DefineOptions.cmake
index 46e4d7933..01dae35df 100644
--- a/build/cmake/DefineOptions.cmake
+++ b/build/cmake/DefineOptions.cmake
@@ -149,7 +149,7 @@ MESSAGE_DEP(HAVE_COMPILER "Disabled because BUILD_THRIFT=OFF and no valid THRIFT
message(STATUS " Build Thrift libraries: ${BUILD_LIBRARIES}")
message(STATUS " Language libraries:")
message(STATUS " Build C++ library: ${BUILD_CPP}")
-MESSAGE_DEP(WITH_CPP "Disabled by via WITH_CCP=OFF")
+MESSAGE_DEP(WITH_CPP "Disabled by via WITH_CPP=OFF")
MESSAGE_DEP(Boost_FOUND "Boost headers missing")
message(STATUS " Build C (GLib) library: ${BUILD_C_GLIB}")
MESSAGE_DEP(WITH_C_GLIB "Disabled by via WITH_C_GLIB=OFF")
diff --git a/build/docker/scripts/cmake.sh b/build/docker/scripts/cmake.sh
index 0b92c5bab..21b7fc683 100755
--- a/build/docker/scripts/cmake.sh
+++ b/build/docker/scripts/cmake.sh
@@ -3,6 +3,12 @@ set -ev
mkdir -p cmake_build && cd cmake_build
cmake $* ..
+for LIB in $BUILD_LIBS; do
+ if ! grep "^BUILD_${LIB}:BOOL=ON$" CMakeCache.txt ; then
+ echo "failed to configure $LIB"
+ exit 1
+ fi
+done
make -j3
cpack
ctest -VV -E "(concurrency_test|processor_test)"