2012-09-02 13:48:49 +02:00
|
|
|
language: cpp
|
|
|
|
|
2013-08-22 20:30:36 -07:00
|
|
|
compiler:
|
2014-06-04 10:51:07 -07:00
|
|
|
- clang
|
2014-08-05 13:10:56 -07:00
|
|
|
# - gcc
|
2014-03-18 15:00:24 -07:00
|
|
|
|
2014-08-08 15:01:35 -07:00
|
|
|
env:
|
|
|
|
matrix:
|
|
|
|
- DEBUG=True ENABLE_LOG=True DEFAULT_LOG_SEVERITY=debug XMLPARSER="libxml2" DEMO=False BENCHMARK=False CUSTOM_CXXFLAGS="" CUSTOM_LDFLAGS=""
|
|
|
|
- DEBUG=False ENABLE_LOG=False DEFAULT_LOG_SEVERITY=none XMLPARSER="ptree" DEMO=False BENCHMARK=False CUSTOM_CXXFLAGS="-flto" CUSTOM_LDFLAGS="-flto"
|
|
|
|
|
2014-05-23 09:02:43 -07:00
|
|
|
addons:
|
|
|
|
postgresql: "9.3"
|
2012-09-02 13:48:49 +02:00
|
|
|
|
|
|
|
before_install:
|
2014-07-03 09:47:11 -07:00
|
|
|
- nproc
|
|
|
|
- free
|
2013-11-22 13:37:56 -08:00
|
|
|
# we need at least g++-4.7 for c++11 features
|
2014-03-18 15:00:24 -07:00
|
|
|
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
2013-11-22 13:37:56 -08:00
|
|
|
# grab more recent gdal/proj
|
2014-05-23 09:02:43 -07:00
|
|
|
# breaks due to http://trac.osgeo.org/ubuntugis/ticket/39
|
|
|
|
#- sudo add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable
|
2013-11-22 13:37:56 -08:00
|
|
|
# more recent boost
|
2014-05-22 17:13:20 -07:00
|
|
|
- sudo add-apt-repository -y ppa:boost-latest/ppa
|
2013-11-22 13:47:50 -08:00
|
|
|
- sudo apt-get update -y
|
2014-08-06 19:24:40 -07:00
|
|
|
- sudo apt-get install -y libstdc++6 libstdc++-4.8-dev make boost1.55 libgdal-dev libgdal1-dev libgdal1h=1.10.0-1~precise1 python-nose libicu-dev libpng-dev libjpeg-dev libtiff-dev libwebp-dev libz-dev libfreetype6-dev libxml2-dev libproj-dev libcairo-dev python-cairo-dev libsqlite3-dev
|
2014-08-06 22:42:56 -07:00
|
|
|
- sudo apt-get install -y binutils-gold
|
2014-08-06 20:03:02 -07:00
|
|
|
- wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key|sudo apt-key add -
|
|
|
|
- sudo apt-get install clang-3.4
|
2014-08-06 20:09:07 -07:00
|
|
|
- export PATH=/usr/bin:${PATH}
|
2014-08-06 20:03:02 -07:00
|
|
|
- echo `which clang`
|
|
|
|
- echo `which clang++`
|
|
|
|
- sudo ln -s /usr/lib/llvm-3.4/lib/LLVMgold.so /usr/lib/LLVMgold.so
|
|
|
|
- sudo ln -s /usr/lib/llvm-3.4/lib/libLTO.so /usr/lib/libLTO.so
|
2014-08-06 19:14:31 -07:00
|
|
|
- if [[ "${CXX}" == 'g++' ]]; then sudo apt-get install gcc-4.8 g++-4.8; export CXX="$(which g++-4.8)"; export CC="$(which gcc-4.8)"; fi;
|
2014-08-04 10:36:43 -07:00
|
|
|
- if [[ "${CXX}" == 'clang++' ]]; then export CXX="$(which clang++)"; export CC="$(which clang)"; fi;
|
2014-08-04 10:06:57 -07:00
|
|
|
- wget http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.34.tar.bz2
|
|
|
|
- tar xf harfbuzz-0.9.34.tar.bz2
|
|
|
|
- cd harfbuzz-0.9.34
|
2014-08-06 20:20:57 -07:00
|
|
|
- ./configure --prefix=/usr --with-icu --with-cairo=no --with-glib=no --with-gobject=no --with-graphite2=no --with-freetype --with-uniscribe=no --with-coretext=no && make && sudo make install
|
2013-11-22 00:52:49 -08:00
|
|
|
- cd ../
|
|
|
|
|
2013-11-22 12:07:58 -08:00
|
|
|
install:
|
2014-08-06 21:34:21 -07:00
|
|
|
- export RANLIB=/bin/true
|
2014-08-08 15:01:35 -07:00
|
|
|
- ./configure CXX="${CXX}" CC="${CC}" CUSTOM_CXXFLAGS="${CUSTOM_CXXFLAGS}" CUSTOM_LDFLAGS="${CUSTOM_LDFLAGS}" XML_PARSER=${XML_PARSER} ENABLE_LOG=${ENABLE_LOG} DEBUG=${DEBUG} DEMO=${DEMO} BENCHMARK=${BENCHMARK} CPP_TESTS=True CAIRO=True FAST=True || cat config.log
|
2014-08-06 22:42:56 -07:00
|
|
|
# workaround ar bug: https://sourceware.org/bugzilla/show_bug.cgi?id=13256
|
|
|
|
- echo 'ar "$@" --plugin /usr/lib/LLVMgold.so' > ar-lto && chmod +x ./ar-lto && export AR=$(pwd)/ar-lto
|
2014-08-04 16:10:55 -07:00
|
|
|
- if [[ "${CXX}" == 'g++-4.8' ]]; then JOBS=2 make; else JOBS=6 make; fi;
|
2013-11-22 12:07:58 -08:00
|
|
|
|
|
|
|
before_script:
|
2014-07-22 16:14:22 -07:00
|
|
|
- make test
|
2013-11-22 12:07:58 -08:00
|
|
|
|
|
|
|
script:
|
2014-07-22 16:14:22 -07:00
|
|
|
- make bench
|
2013-01-04 12:25:07 -08:00
|
|
|
|
2013-01-04 11:47:00 -08:00
|
|
|
notifications:
|
|
|
|
irc:
|
|
|
|
channels:
|
|
|
|
- "irc.freenode.org#mapnik"
|
|
|
|
use_notice: true
|