language: node_js node_js: - "6" sudo: false matrix: include: # test on docker+centos7 - os: linux compiler: clang services: - docker sudo: true dist: trusty env: DOCKERFILE=Dockerfile.centos7 before_install: [] install: - docker build -t tippecanoe-image -f ${DOCKERFILE} . script: - docker run -it tippecanoe-image # test on docker+ubuntu - os: linux compiler: clang services: - docker sudo: true dist: trusty env: DOCKERFILE=Dockerfile before_install: [] install: - docker build -t tippecanoe-image -f ${DOCKERFILE} . script: - docker run -it tippecanoe-image # debug+integer-santizer build - os: linux compiler: clang env: CLANG_VERSION='3.8.0' BUILDTYPE=Debug CC="clang-3.8" CXX="clang++-3.8" CXXFLAGS="-fsanitize=integer" CFLAGS="-fsanitize=integer" LDFLAGS="-fsanitize=integer" addons: apt: sources: ['ubuntu-toolchain-r-test' ] packages: [ 'libstdc++6','libstdc++-5-dev' ] # debug+leak+address-sanitizer build - os: linux compiler: clang env: CLANG_VERSION='3.8.0' BUILDTYPE=Debug ASAN_OPTIONS=detect_leaks=1 CC="clang-3.8" CXX="clang++-3.8" CXXFLAGS="-fsanitize=address,undefined" CFLAGS="-fsanitize=address,undefined" LDFLAGS="-fsanitize=address,undefined" FEWER=true addons: apt: sources: ['ubuntu-toolchain-r-test' ] packages: [ 'libstdc++6','libstdc++-5-dev' ] # coverage+debug build - os: linux compiler: clang env: CLANG_VERSION='3.8.0' BUILDTYPE=Debug CC="clang-3.8" CXX="clang++-3.8" CXXFLAGS="--coverage" CFLAGS="--coverage" LDFLAGS="--coverage" addons: apt: sources: ['ubuntu-toolchain-r-test' ] packages: [ 'libstdc++6','libstdc++-5-dev' ] # release+linux+g++ - os: linux compiler: gcc env: BUILDTYPE=Release CC="gcc-4.9" CXX="g++-4.9" addons: apt: sources: ['ubuntu-toolchain-r-test'] packages: [ 'g++-4.9' ] # release+linux+clang++ - os: linux compiler: clang env: CLANG_VERSION='3.8.0' BUILDTYPE=Release CC="clang-3.8" CXX="clang++-3.8" addons: apt: sources: ['ubuntu-toolchain-r-test' ] packages: [ 'libstdc++6','libstdc++-5-dev' ] # release+osx - os: osx compiler: clang env: BUILDTYPE=Release # debug+osx - os: osx compiler: clang env: BUILDTYPE=Debug before_install: - DEPS_DIR="${TRAVIS_BUILD_DIR}/deps" - export PATH=${DEPS_DIR}/bin:${PATH} && mkdir -p ${DEPS_DIR} - | if [[ ${CLANG_VERSION:-false} != false ]]; then export CCOMPILER='clang' export CXXCOMPILER='clang++' CLANG_URL="https://mason-binaries.s3.amazonaws.com/${TRAVIS_OS_NAME}-x86_64/clang/${CLANG_VERSION}.tar.gz" travis_retry wget --quiet -O - ${CLANG_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR} fi install: - BUILDTYPE=${BUILDTYPE} make -j script: - npm install geobuf - if [ -n "${FEWER}" ]; then BUILDTYPE=${BUILDTYPE} make fewer-tests; else BUILDTYPE=${BUILDTYPE} make test geobuf-test; fi - if [ -n "${COVERAGE}" ]; then /usr/bin/llvm-cov-3.5 -lp *.o; pip install --user cpp-coveralls; ~/.local/bin/coveralls --no-gcov -i ./ --exclude clipper; fi