THRIFT-2635 Travis CI build and test matrix

This closes #163
diff --git a/.travis.yml b/.travis.yml
index 4ab649a..017ac74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -26,51 +26,48 @@
  - 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