language: c sudo: required dist: trusty matrix: include: - compiler: clang env: c_tests=y cc_append=' -std=c90' PYTHON=pypy JAVA=java JAVAC=javac NPM=npm - compiler: gcc env: RUST=rust - compiler: gcc env: GO=go GOROOT=$HOME/goroot PATH=$PATH:$GOROOT/bin - compiler: gcc env: c_tests=y cc_append=' -std=c90' PYTHON=python3.5 THIN_FACTOR=10 - compiler: gcc env: PYTHON=python3.3 THIN_FACTOR=10 - compiler: gcc env: PYTHON=python2.7 THIN_FACTOR=10 - compiler: gcc env: PYTHON=python2.6 THIN_FACTOR=10 # Try to check out a branch of the same name from the snowball-data repo # sibling of this snowball repo, so that PRs requiring changes to both can be # CI tested easily. # # If that fails, just clone the standard snowball-data repo with the same # branch name, falling back to the default branch. # # Also, install rust using rustup.rs before_install: - test -z "$RUST" || curl https://sh.rustup.rs -sSf -o rustup.sh - test -z "$RUST" || chmod ugo+x rustup.sh - test -z "$RUST" || ./rustup.sh -y - test -z "$RUST" || source "$HOME/.cargo/env" - test -z "$RUST" || rm rustup.sh # install go into $HOME/goroot - test -z "$GO" || curl -sLO https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz - test -z "$GO" || tar -C $HOME -xzf go1.8.1.linux-amd64.tar.gz - test -z "$GO" || rm go1.8.1.linux-amd64.tar.gz - test -z "$GO" || mv $HOME/go $HOME/goroot # now create gopath that points to this repo - test -z "$GO" || mkdir -p $HOME/gopath/src/github.com/ - test -z "$GO" || ln -s $HOME/build/snowballstem $HOME/gopath/src/github.com/snowballstem - git clone --depth=1 -b "$TRAVIS_BRANCH" https://github.com:"${TRAVIS_REPO_SLUG%%/*}"/snowball-data.git || git clone --depth=1 -b "$TRAVIS_BRANCH" https://github.com/snowballstem/snowball-data.git || git clone --depth=1 https://github.com/snowballstem/snowball-data.git script: - make CC="$CC$cc_append" - test -z "$c_tests" || make check CC="$CC$cc_append" STEMMING_DATA=snowball-data - test -z "$PYTHON" || make check_python python="$PYTHON" STEMMING_DATA=snowball-data - test -z "$JAVA" -o -z "$JAVAC" || make check_java STEMMING_DATA=snowball-data - test -z "$NPM" || "$NPM" install -g jsx - test -z "$NPM" || make check_jsx STEMMING_DATA=snowball-data - test -z "$RUST" || make check_rust STEMMING_DATA=snowball-data - test -z "$RUST" || make check_rust cargoflags=--release STEMMING_DATA=snowball-data - test -z "$GO" || make check_go STEMMING_DATA=snowball-data