diff --git a/.travis.yml b/.travis.yml index 01d0f512a906642fbcf016b3b285350c91a1b528..2d3c0281e979f350a60b15294e4942963c6e2853 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,85 +8,162 @@ env: global: - LLVM_CONFIG=llvm-config-3.8 matrix: - - BINDINGS=none + - BINDINGS=none LLVM_BACKEND=0 + - BINDINGS=none LLVM_BACKEND=1 matrix: include: - compiler: gcc language: ruby rvm: ruby-2.2.5 - env: BINDINGS=ruby + env: BINDINGS=ruby LLVM_BACKEND=0 + - compiler: gcc + language: ruby + rvm: ruby-2.2.5 + env: BINDINGS=ruby LLVM_BACKEND=1 - compiler: clang language: ruby rvm: ruby-2.2.5 - env: BINDINGS=ruby CC=clang + env: BINDINGS=ruby CC=clang LLVM_BACKEND=0 + - compiler: clang + language: ruby + rvm: ruby-2.2.5 + env: BINDINGS=ruby CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: ruby + rvm: ruby-2.3.1 + env: BINDINGS=ruby LLVM_BACKEND=0 - compiler: gcc language: ruby rvm: ruby-2.3.1 - env: BINDINGS=ruby + env: BINDINGS=ruby LLVM_BACKEND=1 - compiler: clang language: ruby rvm: ruby-2.3.1 - env: BINDINGS=ruby CC=clang + env: BINDINGS=ruby CC=clang LLVM_BACKEND=0 + - compiler: clang + language: ruby + rvm: ruby-2.3.1 + env: BINDINGS=ruby CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: python + python: "2.7" + env: BINDINGS=python LLVM_BACKEND=0 - compiler: gcc language: python python: "2.7" - env: BINDINGS=python + env: BINDINGS=python LLVM_BACKEND=1 + - compiler: clang + language: python + python: "2.7" + env: BINDINGS=python CC=clang LLVM_BACKEND=0 - compiler: clang language: python python: "2.7" - env: BINDINGS=python CC=clang + env: BINDINGS=python CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: perl + perl: "5.18" + env: BINDINGS=perl LLVM_BACKEND=0 - compiler: gcc language: perl perl: "5.18" - env: BINDINGS=perl + env: BINDINGS=perl LLVM_BACKEND=1 - compiler: clang language: perl perl: "5.18" - env: BINDINGS=perl CC=clang + env: BINDINGS=perl CC=clang LLVM_BACKEND=0 + - compiler: clang + language: perl + perl: "5.18" + env: BINDINGS=perl CC=clang LLVM_BACKEND=1 - compiler: gcc language: perl perl: "5.14" - env: BINDINGS=perl + env: BINDINGS=perl LLVM_BACKEND=0 + - compiler: gcc + language: perl + perl: "5.14" + env: BINDINGS=perl LLVM_BACKEND=1 + - compiler: clang + language: perl + perl: "5.14" + env: BINDINGS=perl CC=clang LLVM_BACKEND=0 - compiler: clang language: perl perl: "5.14" - env: BINDINGS=perl CC=clang + env: BINDINGS=perl CC=clang LLVM_BACKEND=1 - compiler: gcc language: perl perl: "5.10" - env: BINDINGS=perl + env: BINDINGS=perl LLVM_BACKEND=0 + - compiler: gcc + language: perl + perl: "5.10" + env: BINDINGS=perl LLVM_BACKEND=1 + - compiler: clang + language: perl + perl: "5.10" + env: BINDINGS=perl CC=clang LLVM_BACKEND=0 - compiler: clang language: perl perl: "5.10" - env: BINDINGS=perl CC=clang + env: BINDINGS=perl CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: php + php: "5.5" + env: BINDINGS=php LLVM_BACKEND=0 - compiler: gcc language: php php: "5.5" - env: BINDINGS=php + env: BINDINGS=php LLVM_BACKEND=1 + - compiler: clang + language: php + php: "5.5" + env: BINDINGS=php CC=clang LLVM_BACKEND=0 - compiler: clang language: php php: "5.5" - env: BINDINGS=php CC=clang + env: BINDINGS=php CC=clang LLVM_BACKEND=1 - compiler: gcc language: php php: "5.4" - env: BINDINGS=php + env: BINDINGS=php LLVM_BACKEND=0 + - compiler: gcc + language: php + php: "5.4" + env: BINDINGS=php LLVM_BACKEND=1 - compiler: clang language: php php: "5.4" - env: BINDINGS=php CC=clang + env: BINDINGS=php CC=clang LLVM_BACKEND=0 + - compiler: clang + language: php + php: "5.4" + env: BINDINGS=php CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: dotnet + env: BINDINGS=dotnet LLVM_BACKEND=0 - compiler: gcc language: dotnet - env: BINDINGS=dotnet + env: BINDINGS=dotnet LLVM_BACKEND=1 + - compiler: clang + language: dotnet + env: BINDINGS=dotnet CC=clang LLVM_BACKEND=0 - compiler: clang language: dotnet - env: BINDINGS=dotnet CC=clang + env: BINDINGS=dotnet CC=clang LLVM_BACKEND=1 + - compiler: gcc + language: cpp + env: BINDINGS=cpp LLVM_BACKEND=0 + - compiler: gcc + language: cpp + env: BINDINGS=cpp LLVM_BACKEND=1 - compiler: gcc language: cpp - env: BINDINGS=cpp + env: BINDINGS=cpp CC=clang LLVM_BACKEND=0 - compiler: gcc language: cpp - env: BINDINGS=cpp CC=clang + env: BINDINGS=cpp CC=clang LLVM_BACKEND=1 before_install: - sudo apt-get update -qq - sudo apt-get install lcov @@ -101,7 +178,7 @@ install: true before_script: - if [ "$BINDINGS" == "php" ]; then phpenv config-add src/bindings/php/hammer.ini; fi script: - - if [ "$BINDINGS" == "none" ]; then scons test --variant=debug --coverage; else scons bindings=$BINDINGS test; fi + - if [ "$BINDINGS" == "none" ]; then if [ "$LLVM_BACKEND" == "1" ]; then LLVM_FLAG="--enable-llvm-backend"; else LLVM_FLAG="--disable-llvm-backend"; fi; scons test --variant=debug $LLVM_FLAG --coverage; else scons $LLVM_FLAG bindings=$BINDINGS test; fi after_success: - if [ "$BINDINGS" == "none" ]; then if [ "$CC" == "clang" ]; then llvm-cov gcov -o coverage.info build/debug/src/test_suite.gcda; else lcov --capture --directory build/debug/src --output-file coverage.info; fi; fi - coveralls-lcov coverage.info