Skip to content

Commit 6d8879c

Browse files
committed
Upgrade travis config
1 parent 6349c11 commit 6d8879c

File tree

3 files changed

+77
-37
lines changed

3 files changed

+77
-37
lines changed

.travis.yml

Lines changed: 49 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,67 @@
1-
language:
2-
- cpp
1+
sudo: false
2+
language: cpp
33

44
compiler:
5-
- gcc
5+
- g++
66
- clang
77

88
env:
9-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="ON"
10-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="ON"
11-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="ON"
12-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="ON"
13-
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="ON"
14-
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="ON"
15-
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="ON"
16-
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="ON"
17-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
18-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
19-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
20-
- BOOST_VER=1.54.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
219
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
2210
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
2311
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
24-
- BOOST_VER=1.55.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
25-
26-
before_install:
27-
- if [ "${CXX}" == "g++" ] || [ ${BUILD_SHARED_LIBS} = "OFF" ]; then
28-
sudo add-apt-repository ppa:boost-latest/ppa --yes;
29-
sudo apt-get update;
30-
fi
31-
- if [ "${CXX}" == "clang++" ] && [ ${BUILD_SHARED_LIBS} = "ON" ]; then
32-
svn export http://svn.boost.org/svn/boost/tags/release/Boost_${BOOST_VER//./_} ../boost_${BOOST_VER//./_};
33-
export BOOST_ROOT=$TRAVIS_BUILD_DIR/../boost_${BOOST_VER//./_};
34-
fi
12+
- BOOST_VER=1.56.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
13+
- BOOST_VER=1.56.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
14+
- BOOST_VER=1.56.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
15+
- BOOST_VER=1.56.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
16+
- BOOST_VER=1.57.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
17+
- BOOST_VER=1.57.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
18+
- BOOST_VER=1.57.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
19+
- BOOST_VER=1.57.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
20+
- BOOST_VER=1.57.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
21+
- BOOST_VER=1.58.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
22+
- BOOST_VER=1.58.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
23+
- BOOST_VER=1.58.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
24+
- BOOST_VER=1.58.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
25+
- BOOST_VER=1.59.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
26+
- BOOST_VER=1.59.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Release" ENABLE_HTTPS="OFF"
27+
- BOOST_VER=1.59.0 BUILD_SHARED_LIBS="ON" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
28+
- BOOST_VER=1.59.0 BUILD_SHARED_LIBS="OFF" CMAKE_BUILD_TYPE="Debug" ENABLE_HTTPS="OFF"
3529

3630
install:
31+
- mkdir -p ${HOME}/bin
3732
- if [ "${CXX}" == "g++" ] || [ ${BUILD_SHARED_LIBS} = "OFF" ]; then
38-
sudo apt-get install libboost${BOOST_VER/%.0/}-all-dev;
33+
export TOOLSET="gcc";
34+
ln -s `which g++-4.8` ${HOME}/bin/g++;
35+
ln -s `which gcc-4.8` ${HOME}/bin/gcc;
3936
fi
40-
- if [ "${CXX}" == "clang++" ] && [ ${BUILD_SHARED_LIBS} = "ON" ]; then
41-
cd $BOOST_ROOT;
42-
./bootstrap.sh --with-toolset=$CC;
43-
./b2 -j4 --stagedir=.;
44-
cd -;
37+
- if [ "${CXX}" == "clang" ]; then
38+
export TOOLSET="clang";
39+
ln -s `which clang-3.6` ${HOME}/bin/g++;
40+
ln -s `which clang++-3.6` ${HOME}/bin/clang++;
4541
fi
42+
- export BOOST_VERSION=${BOOST_VER//./_}
43+
- export PATH=${HOME}/bin:${PATH}
44+
- sh -x ./install-boost.sh
45+
- export BOOST_ROOT=${HOME}/${CC}-boost_${BOOST_VER//./_}
46+
- ${CXX} --version
47+
48+
cache:
49+
directories:
50+
- ${HOME}/${CC}-boost_${BOOST_VER//./_}
4651

4752
script:
48-
- cmake -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
49-
-DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS}
50-
-DCPP-NETLIB_ENABLE_HTTPS=${ENABLE_HTTPS}
51-
- make
52-
- make test
53+
- pwd
54+
- sh -x build.sh
5355

5456
after_failure:
5557
- cat Testing/Temporary/LastTest.log
58+
59+
addons:
60+
apt:
61+
sources:
62+
- ubuntu-toolchain-r-test
63+
- llvm-toolchain-precise-3.6
64+
packages:
65+
- gcc-4.8
66+
- g++-4.8
67+
- clang-3.6

build.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/sh
2+
set -e
3+
4+
mkdir -p build
5+
cd build
6+
cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE \
7+
-DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS \
8+
-DCPP-NETLIB_ENABLE_HTTPS=$ENABLE_HTTPS \
9+
-DBOOST_INCLUDEDIR="${HOME}/${CC}-boost_${BOOST_VERSION}/include" \
10+
-DBOOST_LIBRARYDIR="${HOME}/${CC}-boost_${BOOST_VERSION}/lib" \
11+
-DCMAKE_CXX_FLAGS='-std=c++11' \
12+
..
13+
make -j2
14+
make test
15+
cd ..

install-boost.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/sh
2+
set -e
3+
4+
if [ ! -d "${HOME}/${CC}-boost_${BOOST_VERSION}/include" ]; then
5+
wget -O boost_${BOOST_VERSION}.tar.bz2 http:/sourceforge.get/projects/boost/files/boost/${BOOST_VER}/boost_${BOOST_VERSION}.tar.bz2/download
6+
tar jxf boost_${BOOST_VERSION}.tar.bz2
7+
cd boost_${BOOST_VERSION}
8+
./bootstrap.sh --with-toolset=$TOOLSET --prefix=${HOME}/${CC}-boost_${BOOST_VERSION}
9+
./b2 --stagedir=. -j2 --build-type=complete --layout=tagged cxxflags='-std=c++11' install 2>boost-error.log
10+
cd ..
11+
rm -rf boost_${BOOST_VERSION}
12+
rm -rf boost_${BOOST_VERSION}.tar.bz2
13+
fi

0 commit comments

Comments
 (0)