summaryrefslogtreecommitdiff
path: root/.travis.yml
diff options
context:
space:
mode:
authorhenrique <henrique@apache.org>2014-07-23 23:31:04 +0200
committerhenrique <henrique@apache.org>2014-07-23 23:31:04 +0200
commitac8d8e260e3b0087ae2975ffcbea842255f57601 (patch)
tree0e537a473bd39f8333cd7097f93501457f292783 /.travis.yml
parentfeea9477e75ed2f9d2654bda200c1cf79c1f7a31 (diff)
downloadthrift-ac8d8e260e3b0087ae2975ffcbea842255f57601.tar.gz
THRIFT-2635 Travis CI build and test matrix
This closes #163
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml79
1 files changed, 38 insertions, 41 deletions
diff --git a/.travis.yml b/.travis.yml
index 4ab649a31..017ac74ef 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -26,51 +26,48 @@ cache:
- npm
- maven
-# see what we need: http://thrift.apache.org/docs/install/ubuntu
+
+
+## Build matrix:
+env:
+ # Small Set
+ - CONFIG="--without-erlang --without-haskell --without-python --without-go --without-lua --without-d --without-ruby --without-nodejs --without-java"
+
+ # Build All
+ # TODO: fix these languages
+ - CONFIG="--without-erlang --without-haskell --without-python --without-go --without-lua"
+
+
+matrix:
+ include:
+ - compiler: gcc
+ env: CONFIG="--disable-libs"
+ before_install:
+ - sh contrib/installCXXDependencies.sh;
+ script:
+ - make check -j4;
+ - mkdir build_native && cd build_native && cmake ../compiler/cpp/ && make -j4; cd ..;
+ - mkdir build_mingw32 && cd build_mingw32 && cmake -DCMAKE_TOOLCHAIN_FILE=../contrib/mingw32-toolchain.cmake ../compiler/cpp/ && make -j4; cd ..;
+
+ - compiler: clang
+ env: CONFIG="--disable-libs"
+ before_install:
+ - sh contrib/installCXXDependencies.sh;
+ script:
+ - make check -j4;
+
+
+
+## Default build sequence:
before_install:
- - sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu/ trusty main restricted" -y
- - sudo apt-get update -qq
- - sudo apt-get install -qq libboost-dev libboost-test-dev libboost-program-options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev bc
- - dpkg -S /usr/include/boost/version.hpp
-# Java
- - sudo apt-get install -qq ant
-# Ruby
- - gem install bundler -v 1.3.5 || true
-# Python
-# - sudo apt-get install -qq python-all python-all-dev python-all-dbg
-# Perl
- - sudo apt-get install -qq libbit-vector-perl libclass-accessor-class-perl
-# PHP
- - sudo apt-get install -qq php5-dev php5-cli phpunit php-pear
- - sudo pear channel-discover pear.phpunit.de
- - sudo pear channel-discover pear.symfony.com
-# - sudo pear channel-discover components.ez.no
- - sudo pear update-channels
- - sudo pear upgrade-all
- - sudo pear install --alldeps phpunit/PHPUnit
-# c_glib
- - sudo apt-get install -qq libglib2.0-dev
-# Erlang
-# - sudo apt-get install -qq erlang-base erlang-eunit erlang-dev
-# Csharp
- - sudo apt-get install -qq mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console
-# Haskell
-# - sudo apt-get install -qq ghc6 cabal-install libghc6-binary-dev libghc6-network-dev libghc6-http-dev
-# Thrift Compiler for Windows
- - sudo apt-get install -qq mingw32
-# node.js
- - sudo apt-get install -qq nodejs npm
- - sudo npm install nodeunit -g || true
+ - sh contrib/installDependencies.sh 1> /dev/null;
install:
- - sh bootstrap.sh
+ - sh bootstrap.sh;
+ - sh configure $CONFIG;
script:
-# TODO: fix these languages
- - sh configure --without-erlang --without-haskell --without-python --without-go --without-lua
- - make -j4 && make dist
- - make cross -j4
- - mkdir build_native && cd build_native && cmake ../compiler/cpp/ && make -j4; cd ..
- - mkdir build_mingw32 && cd build_mingw32 && cmake -DCMAKE_TOOLCHAIN_FILE=../contrib/mingw32-toolchain.cmake ../compiler/cpp/ && make -j4; cd ..
+ - make -j4 && make dist;
+ - make cross -j4;
# TODO: add these steps
# - sh bootstrap.sh ; dpkg-buildpackage -tc