language: cpp
os:
  - linux
env:
  matrix:
    - NODE_NVM_VERSION="12" NODE_MAPNIK_VERSION=4 MAPNIK_FORK=@naturalatlas/mapnik # https://github.com/mapnik/node-mapnik/pull/959
    - NODE_NVM_VERSION="10" NODE_MAPNIK_VERSION=4 MAPNIK_FORK=@naturalatlas/mapnik # https://github.com/mapnik/node-mapnik/pull/959
    - NODE_NVM_VERSION="8" NODE_MAPNIK_VERSION=3.7
before_install:
  # install c++11 capable libstdc++ without sudo
  # - if [[ $(uname -s) == 'Linux' ]]; then wget https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+files/libstdc%2B%2B6_4.8.1-2ubuntu1~12.04_amd64.deb && dpkg -x libstdc++6_4.8.1-2ubuntu1~12.04_amd64.deb ./ && export LD_PRELOAD=$(pwd)/usr/lib/x86_64-linux-gnu/libstdc++.so.6; fi
  # install node.js
  - git clone https://github.com/creationix/nvm.git ../.nvm
  - source ../.nvm/nvm.sh
  - nvm install $NODE_NVM_VERSION
  - nvm use $NODE_NVM_VERSION
  - node --version
  - npm --version
script:
  # dependencies
  - npm install --fallback-to-build=false
  - npm install tilestrata
  - npm install mapnik@$NODE_MAPNIK_VERSION
  - if [[ "${MAPNIK_FORK}" != "" ]]; then npm install module-alias@2 $MAPNIK_FORK@$NODE_MAPNIK_VERSION; fi;
  - if [[ "${MAPNIK_FORK}" == "" ]]; then npm install mapnik@$NODE_MAPNIK_VERSION; fi;
  # execute tests
  - make test && (make test-ci-coverage || true)
