2015-07-08 13:51:28 +01:00
language : cpp
2016-07-07 12:46:31 +01:00
sudo : required
dist : trusty
2016-02-02 10:50:51 +00:00
env :
- NODE4=true
- NODE5=true
2016-06-14 19:05:17 +01:00
- JSONPLAT=true NODE4=true
- JSONPLAT=true NODE5=true
2016-08-23 21:24:35 +02:00
- MOCK=true NODE4=true
- MOCK=true NODE5=true
2016-08-10 09:26:27 +01:00
- NPM=true NODE4=true
- NPM=true NODE5=true
2016-05-09 09:23:49 -07:00
compiler :
- clang
- gcc
2016-07-07 12:46:31 +01:00
before_install :
# Via https://github.com/travis-ci/travis-ci/issues/5326
- export PATH="$(echo $PATH | tr ':' "\n" | sed '/\/opt\/python/d' | tr "\n" ":" | sed "s|::|:|g")"
2015-07-08 13:51:28 +01:00
install :
2016-02-02 10:50:51 +00:00
- if [ "${NODE4}" ]; then export CC=gcc-4.8 CXX=g++-4.8; fi
2015-12-01 11:56:47 -08:00
before_script :
2016-05-09 09:23:49 -07:00
# Turn off JAVA SWIG for clang++, use 4.8 for all g++ builds
- if [ "$CC" == "gcc" ]; then export BUILDJAVA=ON; export CC=gcc-4.8; export CXX=g++-4.8; else export BUILDJAVA=OFF; fi
2016-06-14 19:05:17 +01:00
- if [ "${JSONPLAT}" ]; then export JSONPLAT=ON; else export JSONPLAT=OFF; fi
2016-08-23 21:24:35 +02:00
- if [ "${MOCK}" ]; then export BUILDARCH="MOCK"; else export BUILDARCH=""; fi
2016-05-09 09:23:49 -07:00
- if [ "${NODE4}" ]; then nvm install 4.1; fi
- if [ "${NODE5}" ]; then nvm install 5; fi
2017-04-20 11:23:54 -07:00
- npm install node-gyp && export NODE_GYP="$TRAVIS_BUILD_DIR/node_modules/node-gyp/bin/node-gyp.js"
2016-10-31 14:31:18 +01:00
- wget http://iotdk.intel.com/misc/tr/swig-3.0.10.tar.gz && tar xf swig-3.0.10.tar.gz && cd swig-3.0.10 && ./configure --prefix=/home/travis/ && make && make install && cd ..
2015-07-08 13:51:28 +01:00
script :
2017-05-06 14:44:48 +02:00
- echo "CC=$CC BUILDJAVA=$BUILDJAVA BUILDARCH=$BUILDARCH JSONPLAT=$JSONPLAT NODE4=$NODE4 NODE5=$NODE5 NODE_ROOT_DIR=$NODE_ROOT_DIR"
2016-08-23 21:24:35 +02:00
- if [ -z ${NPM} ]; then mkdir build && cd build && cmake -DBUILDSWIGJAVA="$BUILDJAVA" -DBUILDARCH="$BUILDARCH" -DJSONPLAT=$JSONPLAT -DNODE_ROOT_DIR:PATH="${NVM_BIN}/.." -DCMAKE_INSTALL_PREFIX:PATH=../install -DSWIG_EXECUTABLE=/home/travis/bin/swig -DSWIG_DIR:PATH=/home/travis/share/swig/3.0.10/ .. && make install && make test; else mkdir build && cd build && cmake -DBUILDSWIGJAVA="$BUILDJAVA" -DJSONPLAT=$JSONPLAT -DNODE_ROOT_DIR:PATH="${NVM_BIN}/.." -DCMAKE_INSTALL_PREFIX:PATH=../install -DSWIG_EXECUTABLE=/home/travis/bin/swig -DSWIG_DIR:PATH=/home/travis/share/swig/3.0.10/ .. && make npmpkg && cd .. && ${NODE_GYP} configure && ${NODE_GYP} build; fi
2016-08-10 09:26:27 +01:00
# simple test to see if we can load our node module
- if [ ${NPM} ]; then cd build/Release/obj.target/ && node -e "var m = require('./mraa.node'); m.getVersion()";fi
2016-02-02 10:50:51 +00:00
addons :
apt :
sources :
- ubuntu-toolchain-r-test
2016-06-29 10:08:51 +01:00
- kalakris-cmake
2016-02-02 10:50:51 +00:00
packages :
- g++-4.8
2016-06-29 10:08:51 +01:00
- cmake
- python
2016-07-07 12:46:31 +01:00
- python-dev
2016-06-29 11:11:15 +01:00
- python3
- python3-dev
2016-06-29 10:08:51 +01:00
- git
2016-06-14 19:05:17 +01:00
- libjson0
- libjson0-dev