UNPKG

libzim

Version:

Bindings to zimlib (read/write OpenZIM files)

230 lines (217 loc) 8.64 kB
# Much of this is borrowed from node-sqlite3 and node-icu-bidi. sudo: false language: cpp git: depth: 10 addons: apt: sources: - ubuntu-toolchain-r-test packages: - gcc-5-multilib - g++-5-multilib - liblzma-dev ## don't re-build for tags so that [publish binary] is not re-run ## https://github.com/travis-ci/travis-ci/issues/1532 #branches: # except: # - /^[0-9]+[.][0-9]+[.][0-9]+/ matrix: include: # Linux amd64 - os: linux env: NODE_VERSION="node" PUBLISHABLE=false # latest - os: linux compiler: clang env: NODE_VERSION="6.2.2" # node abi 48 - os: linux compiler: clang env: NODE_VERSION="5.11.1" # node abi 47 - os: linux env: NODE_VERSION="4.4.5" # node abi 46 - os: linux compiler: clang env: NODE_VERSION="4.0.0" PUBLISHABLE=false - os: linux env: NODE_VERSION="iojs-3.3.1" # node abi 45 - os: linux compiler: clang env: NODE_VERSION="iojs-3.1.0" PUBLISHABLE=false - os: linux compiler: clang env: NODE_VERSION="iojs-2.4.0" PUBLISHABLE=false - os: linux env: NODE_VERSION="iojs-2.4.0" # node abi 44 - os: linux compiler: clang env: NODE_VERSION="iojs-1.8.4" PUBLISHABLE=false - os: linux env: NODE_VERSION="iojs-1.8.4" # node abi 43 - os: linux env: NODE_VERSION="0.12.7" # node abi 14 - os: linux env: NODE_VERSION="0.10.40" # node abi 11 - os: linux env: NODE_VERSION="0.8.28" # node abi 1 # Linux x86 builds - os: linux env: NODE_VERSION="6.2.2" BUILD_X86=true # node abi 48 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="5.11.1" BUILD_X86=true # node abi 47 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="4.4.5" BUILD_X86=true # node abi 46 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="iojs-3.3.1" BUILD_X86=true # node abi 45 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="iojs-2.4.0" BUILD_X86=true # node abi 44 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="iojs-1.8.4" BUILD_X86=true # node abi 43 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="0.12.7" BUILD_X86=true # node abi 14 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="0.10.40" BUILD_X86=true # node abi 11 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] - os: linux env: NODE_VERSION="0.8.28" BUILD_X86=true # node abi 1 addons: apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev:i386', 'liblzma5:i386', 'libc6-dev:i386' ] # # DISABLE EXTERNAL LIBZIM BUILD # We need a newer version of libzim to be packaged upstream. # # # test building against external libzim # - os: linux # env: NODE_VERSION="4.4.5" EXTERNAL_LIBZIM=true PUBLISHABLE=false # addons: # apt: # sources: [ 'ubuntu-toolchain-r-test' ] # packages: [ 'gcc-5-multilib', 'g++-5-multilib', 'liblzma-dev', 'libzim-dev' ] # OS X - os: osx compiler: clang env: NODE_VERSION="6.2.2" # node abi 48 - os: osx compiler: clang env: NODE_VERSION="5.11.1" # node abi 47 - os: osx compiler: clang env: NODE_VERSION="4.4.5" # node abi 46 - os: osx compiler: clang env: NODE_VERSION="iojs-3.3.1" # node abi 45 - os: osx compiler: clang env: NODE_VERSION="iojs-2.4.0" # node abi 44 - os: osx compiler: clang env: NODE_VERSION="iojs-1.8.4" # node abi 43 - os: osx compiler: clang env: NODE_VERSION="0.12.7" # node abi 14 - os: osx compiler: clang env: NODE_VERSION="0.10.40" # node abi 11 - os: osx compiler: clang env: NODE_VERSION="0.8.28" # node abi 1 env: global: - LLVM_VERSION=3.8.0 - secure: "KhufD8drdOFt9snkCY4kHLYLpksRXgqyIkcwJhUZ+G61phx8r59h3Z30FFQcDYu3claCb3uqER4ufTSiRxfgQ5ZRQhqYasxDycWXyuOeKKQ/7mVvq7k/qgDbItDEc0UFh4oZhIviNeZujEBbvSr2Bb3WSznD1GGLPSWYShvFJTNPjmy5e1xC9l2ExTVqB9A3cwd1kLqTw1SrCegSGMirCp1tL10aJ3WkM4gV28jYgt7YdLCLndAmlm2LcEtn57cdouTTinQPurpMSLFlQ5cmVzgZfmjkKgJ4ncABKY9aZ5PJ4s1VfrV8tAzgForSXR5Ww+3L7N8zDjuHfrVbJnT3lYChlf1K0YsHLGLyEdEV/NDDG1gtz92aHsc/PGoI5hvdbkm+3MqNV8flizfzb94Hr0T1KsaAO8pgY2hxX2rC9tLWASNtUOSQE4g5IaEgerMGKC5dLSWvS4lLHIvUb9i7QJXw7LwvmWRJMPqVceLwe6oExTXtBGBMt046EPtfkHNNqhoz4bLKc60zmZ+4gVnJ2/DqpMGDFM18mRhgAsvHamibu6CZXdrFRRA3A7TmkAAlOM8wuSFG2svARX1yZ/0M/KwjeMtxtDdrdLrJiqPfma6A55QiC84n8x+ET3jkZj8WFuqCP/4jBBnMfwFGHwWqvIAIMsvxJWBOesMdHdM0W1M=" cache: ccache: true directories: - $HOME/llvm-$LLVM_VERSION before_install: - export PUBLISHABLE=${PUBLISHABLE:-true} - if test "$TRAVIS_OS_NAME $CC" = "osx clang" ; then brew update; brew install xz libmagic; export CXX="clang++ -I/usr/local/include" ; export CC="clang -I/usr/local/include" ; fi - if test "$TRAVIS_OS_NAME $CC" = "linux clang" ; then if [ -z "$(ls -A $HOME/llvm-$LLVM_VERSION)" ]; then wget -O $HOME/llvm-$LLVM_VERSION.tar.xz http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz; mkdir $HOME/llvm-$LLVM_VERSION; xzcat $HOME/llvm-$LLVM_VERSION.tar.xz | tar -xvf - --strip 1 -C $HOME/llvm-$LLVM_VERSION; fi; export LLVM_CONFIG="$HOME/llvm-$LLVM_VERSION/bin/llvm-config"; export PATH=$HOME/llvm-$LLVM_VERSION/bin:$PATH; llvm-config --version; clang --version; export CXX="clang++" ; export CC="clang" ; fi - if test "$TRAVIS_OS_NAME $CC" = "linux gcc" ; then export CXX="g++-5" ; export CC="gcc-5" ; fi # check if tag exists and matches package.json - scripts/validate_tag.sh - echo $NODE_VERSION - rm -rf ~/.nvm/ && git clone --depth 1 https://github.com/creationix/nvm.git ~/.nvm - source ~/.nvm/nvm.sh - nvm install $NODE_VERSION - nvm use $NODE_VERSION - if test "$NODE_VERSION" = "0.8.28" ; then npm install -g npm@1.4.28 ; fi #- npm config set spin=false #- npm config set loglevel=http - node --version - npm --version install: # put node-pre-gyp on path - export PATH=./node_modules/.bin/:$PATH before_script: # get commit message - export COMMIT_MESSAGE=$(git show -s --format=%B $TRAVIS_COMMIT | tr -d '\n') script: - node --version - npm --version # XXX disable external builds: libzim-dev needs to be whitelisted: # https://github.com/travis-ci/apt-package-whitelist/issues/3176 - unset EXTERNAL_LIBZIM # XXX end hack. - if test -n "$BUILD_X86"; then source scripts/publish_x86.sh ; echo PATH=$PATH ; fi - if test -z "$EXTERNAL_LIBZIM" ; then npm install --build-from-source ; else npm install --build-from-source --libzim=external ; fi - node-pre-gyp package testpackage - npm test - export PUBLISH=false # Normal case: tagged builds trigger 32-bit and 64-bit x86 builds - if scripts/validate_tag.sh --check ; then PUBLISH=true; fi # Workaround to trigger a manual x86 build - if test "$TRAVIS_BRANCH" == "x86" -a "${COMMIT_MESSAGE#*'[publish binary]'}" != "$COMMIT_MESSAGE"; then PUBLISH=true; fi - if test "$PUBLISH,$PUBLISHABLE" = "true,true"; then npm test && npm install core-js@1.1.4 && npm install request@2.64.0 && npm run gh-publish ; fi