2016-03-10 23:34:22 -05:00
|
|
|
#language: cpp
|
|
|
|
# This makes travis use the thin image which boots faster
|
|
|
|
language: generic
|
|
|
|
|
|
|
|
|
|
|
|
# sudo:required is needed for trusty images
|
2015-10-06 09:56:40 -04:00
|
|
|
sudo: required
|
|
|
|
dist: trusty
|
|
|
|
|
|
|
|
notifications:
|
|
|
|
email: false
|
|
|
|
|
2013-07-31 05:17:08 -04:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
2015-10-06 09:56:40 -04:00
|
|
|
|
|
|
|
matrix:
|
2016-02-15 19:27:18 -05:00
|
|
|
fast_finish: true
|
|
|
|
|
2015-10-06 09:56:40 -04:00
|
|
|
include:
|
|
|
|
|
2016-02-15 21:56:38 -05:00
|
|
|
# Debug Builds
|
2015-10-06 09:56:40 -04:00
|
|
|
- os: linux
|
2016-02-15 21:56:38 -05:00
|
|
|
compiler: gcc
|
|
|
|
addons: &gcc5
|
2015-10-06 09:56:40 -04:00
|
|
|
apt:
|
2016-02-15 21:56:38 -05:00
|
|
|
sources: ['ubuntu-toolchain-r-test']
|
2016-04-07 18:49:53 -04:00
|
|
|
packages: ['g++-5', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev', 'pip']
|
|
|
|
env: CCOMPILER='gcc-5' CXXCOMPILER='g++-5' BUILD_TYPE='Debug' COVERAGE=ON
|
2016-02-15 21:56:38 -05:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
compiler: gcc
|
|
|
|
addons: &gcc48
|
|
|
|
apt:
|
|
|
|
sources: ['ubuntu-toolchain-r-test']
|
2016-03-04 15:11:05 -05:00
|
|
|
packages: ['g++-4.8', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
2016-04-06 05:10:59 -04:00
|
|
|
env: CCOMPILER='gcc-4.8' CXXCOMPILER='g++-4.8' BUILD_TYPE='Debug'
|
2015-10-06 09:56:40 -04:00
|
|
|
|
2015-11-17 18:29:05 -05:00
|
|
|
- os: linux
|
|
|
|
compiler: clang
|
|
|
|
addons: &clang38
|
|
|
|
apt:
|
2016-04-04 06:27:45 -04:00
|
|
|
sources: ['llvm-toolchain-precise-3.8', 'ubuntu-toolchain-r-test']
|
2016-03-04 15:11:05 -05:00
|
|
|
packages: ['clang-3.8', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
2016-04-06 05:10:59 -04:00
|
|
|
env: CCOMPILER='clang-3.8' CXXCOMPILER='clang++-3.8' BUILD_TYPE='Debug' RUN_CLANG_FORMAT=ON
|
2015-11-17 18:29:05 -05:00
|
|
|
|
2016-02-15 21:56:38 -05:00
|
|
|
- os: osx
|
2016-02-19 15:14:14 -05:00
|
|
|
osx_image: xcode7.3
|
2015-10-06 09:56:40 -04:00
|
|
|
compiler: clang
|
2016-04-06 05:10:59 -04:00
|
|
|
env: CCOMPILER='clang' CXXCOMPILER='clang++' BUILD_TYPE='Debug'
|
2015-10-06 09:56:40 -04:00
|
|
|
|
2016-02-15 21:56:38 -05:00
|
|
|
# Release Builds
|
|
|
|
- os: linux
|
|
|
|
compiler: gcc
|
|
|
|
addons: &gcc5
|
|
|
|
apt:
|
|
|
|
sources: ['ubuntu-toolchain-r-test']
|
2016-03-04 15:11:05 -05:00
|
|
|
packages: ['g++-5', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
2016-04-06 05:10:59 -04:00
|
|
|
env: CCOMPILER='gcc-5' CXXCOMPILER='g++-5' BUILD_TYPE='Release'
|
2015-10-06 09:56:40 -04:00
|
|
|
|
2016-05-04 07:41:55 -04:00
|
|
|
# Disabled because of CI slowness
|
|
|
|
#- os: linux
|
|
|
|
#- compiler: gcc
|
|
|
|
#- addons: &gcc48
|
|
|
|
#- apt:
|
|
|
|
#- sources: ['ubuntu-toolchain-r-test']
|
|
|
|
#- packages: ['g++-4.8', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
|
|
|
#- env: CCOMPILER='gcc-4.8' CXXCOMPILER='g++-4.8' BUILD_TYPE='Release'
|
|
|
|
|
|
|
|
# Disabled because of CI slowness
|
|
|
|
#- os: linux
|
|
|
|
#- compiler: clang
|
|
|
|
#- addons: &clang38
|
|
|
|
#- apt:
|
|
|
|
#- sources: ['llvm-toolchain-precise-3.8', 'ubuntu-toolchain-r-test']
|
|
|
|
#- packages: ['clang-3.8', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
|
|
|
#- env: CCOMPILER='clang-3.8' CXXCOMPILER='clang++-3.8' BUILD_TYPE='Release'
|
|
|
|
|
|
|
|
# Disabled because of CI slowness
|
|
|
|
#- os: osx
|
|
|
|
#- osx_image: xcode7.3
|
|
|
|
#- compiler: clang
|
|
|
|
#- env: CCOMPILER='clang' CXXCOMPILER='clang++' BUILD_TYPE='Release'
|
2016-02-15 21:56:38 -05:00
|
|
|
|
|
|
|
# Shared Library
|
2015-11-17 18:29:05 -05:00
|
|
|
- os: linux
|
|
|
|
compiler: gcc
|
|
|
|
addons: &gcc5
|
|
|
|
apt:
|
|
|
|
sources: ['ubuntu-toolchain-r-test']
|
2016-03-04 15:11:05 -05:00
|
|
|
packages: ['g++-5', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
2016-04-06 05:10:59 -04:00
|
|
|
env: CCOMPILER='gcc-5' CXXCOMPILER='g++-5' BUILD_TYPE='Release' BUILD_SHARED_LIBS=ON
|
2015-11-17 18:29:05 -05:00
|
|
|
|
2016-05-04 07:41:55 -04:00
|
|
|
# Disabled because CI slowness
|
|
|
|
#- os: linux
|
|
|
|
#- compiler: clang
|
|
|
|
#- addons: &clang38
|
|
|
|
#- apt:
|
|
|
|
#- sources: ['llvm-toolchain-precise-3.8', 'ubuntu-toolchain-r-test']
|
|
|
|
#- packages: ['clang-3.8', 'libbz2-dev', 'libstxxl-dev', 'libstxxl1', 'libxml2-dev', 'libzip-dev', 'lua5.1', 'liblua5.1-0-dev', 'libtbb-dev', 'libgdal-dev', 'libluabind-dev', 'libboost-all-dev']
|
|
|
|
#- env: CCOMPILER='clang-3.8' CXXCOMPILER='clang++-3.8' BUILD_TYPE='Release' BUILD_SHARED_LIBS=ON
|
2015-10-06 09:56:40 -04:00
|
|
|
|
2016-03-04 15:11:05 -05:00
|
|
|
before_install:
|
|
|
|
- source ./scripts/install_node.sh 4
|
2015-10-06 09:56:40 -04:00
|
|
|
|
|
|
|
install:
|
2016-03-04 15:11:05 -05:00
|
|
|
- npm install
|
2015-10-06 09:56:40 -04:00
|
|
|
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
|
|
|
|
- mkdir -p ${DEPS_DIR} && cd ${DEPS_DIR}
|
2016-04-07 18:49:53 -04:00
|
|
|
- |
|
|
|
|
if [[ -n "${COVERAGE}" ]]; then
|
|
|
|
pip install --user cpp-coveralls
|
|
|
|
fi
|
2015-10-06 09:56:40 -04:00
|
|
|
- |
|
|
|
|
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
|
2016-04-04 06:29:15 -04:00
|
|
|
CMAKE_URL="http://www.cmake.org/files/v3.5/cmake-3.5.1-Linux-x86_64.tar.gz"
|
2015-10-06 09:56:40 -04:00
|
|
|
mkdir cmake && travis_retry wget --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake
|
|
|
|
export PATH=${DEPS_DIR}/cmake/bin:${PATH}
|
|
|
|
elif [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
|
2016-03-10 06:54:22 -05:00
|
|
|
# implicit deps, but seem to be installed by default with recent images: libxml2 GDAL boost
|
|
|
|
brew install cmake libzip libstxxl lua51 luabind tbb md5sha1sum
|
2015-10-06 09:56:40 -04:00
|
|
|
fi
|
|
|
|
|
|
|
|
before_script:
|
|
|
|
- cd ${TRAVIS_BUILD_DIR}
|
2016-01-25 22:42:12 -05:00
|
|
|
- |
|
|
|
|
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
|
|
|
|
./scripts/check_taginfo.py taginfo.json profiles/car.lua
|
|
|
|
fi
|
2016-02-01 09:39:06 -05:00
|
|
|
- mkdir build && pushd build
|
2016-04-06 05:10:59 -04:00
|
|
|
- export CC=${CCOMPILER} CXX=${CXXCOMPILER}
|
2016-03-04 15:11:05 -05:00
|
|
|
- export OSRM_PORT=5000 OSRM_TIMEOUT=6000
|
2016-04-07 18:49:53 -04:00
|
|
|
- cmake .. -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS:-OFF} -DCOVERAGE=${COVERAGE:-OFF} -DBUILD_TOOLS=1 -DENABLE_CCACHE=0
|
2015-10-06 09:56:40 -04:00
|
|
|
|
|
|
|
script:
|
2016-04-24 18:19:48 -04:00
|
|
|
- echo "travis_fold:start:MAKE"
|
2015-10-06 09:56:40 -04:00
|
|
|
- make --jobs=2
|
|
|
|
- make tests --jobs=2
|
|
|
|
- make benchmarks
|
2016-04-24 18:19:48 -04:00
|
|
|
- echo "travis_fold:end:MAKE"
|
|
|
|
- echo "travis_fold:start:INSTALL"
|
2016-01-07 13:19:55 -05:00
|
|
|
- sudo make install
|
|
|
|
- |
|
|
|
|
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
|
|
|
|
sudo ldconfig
|
|
|
|
fi
|
2016-04-24 18:19:48 -04:00
|
|
|
- echo "travis_fold:end:INSTALL"
|
|
|
|
- echo "travis_fold:start:BENCHMARK"
|
|
|
|
- make -C ../test/data benchmark
|
|
|
|
- echo "travis_fold:end:BENCHMARK"
|
2016-04-06 04:58:49 -04:00
|
|
|
- echo "travis_fold:start:UNIT_TESTS"
|
2016-04-06 06:44:46 -04:00
|
|
|
- ./unit_tests/extractor-tests
|
|
|
|
- ./unit_tests/engine-tests
|
|
|
|
- ./unit_tests/util-tests
|
|
|
|
- ./unit_tests/server-tests
|
2016-04-24 18:46:36 -04:00
|
|
|
- ./unit_tests/library-tests ../test/data/monaco.osrm
|
2016-04-06 04:58:49 -04:00
|
|
|
- echo "travis_fold:end:UNIT_TESTS"
|
2016-02-01 09:39:06 -05:00
|
|
|
- popd
|
2016-04-06 04:58:49 -04:00
|
|
|
- echo "travis_fold:start:CUCUMBER"
|
2016-03-04 15:11:05 -05:00
|
|
|
- npm test
|
2016-04-06 04:58:49 -04:00
|
|
|
- echo "travis_fold:end:CUCUMBER"
|
2016-02-01 09:39:06 -05:00
|
|
|
- mkdir example/build && pushd example/build
|
2016-01-07 13:19:55 -05:00
|
|
|
- cmake ..
|
|
|
|
- make
|
2016-03-10 23:58:42 -05:00
|
|
|
- ./osrm-example ../../test/data/monaco.osrm
|
2016-02-01 09:39:06 -05:00
|
|
|
- popd
|
2016-04-07 18:49:53 -04:00
|
|
|
|
|
|
|
after_success:
|
2016-02-01 09:39:06 -05:00
|
|
|
- |
|
2016-04-24 18:19:48 -04:00
|
|
|
if [ -n "${RUN_CLANG_FORMAT}" ]; then
|
2016-02-24 19:08:23 -05:00
|
|
|
./scripts/format.sh || true # we don't want to fail just yet
|
2016-02-01 09:39:06 -05:00
|
|
|
fi
|
2016-04-24 18:19:48 -04:00
|
|
|
- |
|
|
|
|
if [ -n "${COVERAGE}" ]; then
|
|
|
|
coveralls --build-root build --exclude unit_tests --exclude third_party --exclude node_modules --gcov-options '\-lp'
|
|
|
|
fi
|