blob: 63ae8014511fee9df3ae1018c8a0da921ede8a1a [file] [log] [blame]
Roger Meiera0836f62013-05-05 00:19:38 +02001#
2# Licensed to the Apache Software Foundation (ASF) under one
3# or more contributor license agreements. See the NOTICE file
4# distributed with this work for additional information
5# regarding copyright ownership. The ASF licenses this file
6# to you under the Apache License, Version 2.0 (the
7# "License"); you may not use this file except in compliance
8# with the License. You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing,
13# software distributed under the License is distributed on an
14# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15# KIND, either express or implied. See the License for the
16# specific language governing permissions and limitations
17# under the License.
18#
19
20# build Apache Thrift on Travis CI - https://travis-ci.org/
21
henriqued17f1c92014-04-30 16:21:25 +020022language: cpp
henriquea139c912014-04-02 14:45:39 +020023
24cache:
25 - apt
26 - npm
henriqued17f1c92014-04-30 16:21:25 +020027 - maven
Roger Meiera0836f62013-05-05 00:19:38 +020028
henriqueac8d8e22014-07-23 23:31:04 +020029
30
31## Build matrix:
32env:
33 # Small Set
34 - CONFIG="--without-erlang --without-haskell --without-python --without-go --without-lua --without-d --without-ruby --without-nodejs --without-java"
35
henriquec0a7d722014-07-26 13:11:12 +020036 # C & C++ & Haskell (for some reason qt4 is required)
37 - CONFIG="--without-csharp --without-java --without-erlang --without-nodejs --without-lua --without-python --without-perl --without-php --without-php-extension --without-ruby --without-go --without-d" GHCVER=7.8.3
38
henriqueac8d8e22014-07-23 23:31:04 +020039 # Build All
40 # TODO: fix these languages
henriquec0a7d722014-07-26 13:11:12 +020041 - CONFIG="--without-erlang --without-python --without-go --without-lua" GHCVER=7.8.3
henriqueac8d8e22014-07-23 23:31:04 +020042
henriquec0a7d722014-07-26 13:11:12 +020043
henriqueac8d8e22014-07-23 23:31:04 +020044matrix:
45 include:
46 - compiler: gcc
47 env: CONFIG="--disable-libs"
48 before_install:
49 - sh contrib/installCXXDependencies.sh;
50 script:
51 - make check -j4;
Konrad Grochowski4ab18ce2014-09-16 20:19:56 +020052 - mkdir build_native && cd build_native && cmake ../compiler/cpp/ && make -j4 && cd ..;
53 - mkdir build_mingw32 && cd build_mingw32 && cmake -DCMAKE_TOOLCHAIN_FILE=../contrib/mingw32-toolchain.cmake ../compiler/cpp/ && make -j4 && cd ..;
henriqueac8d8e22014-07-23 23:31:04 +020054
55 - compiler: clang
56 env: CONFIG="--disable-libs"
57 before_install:
58 - sh contrib/installCXXDependencies.sh;
59 script:
60 - make check -j4;
61
62
63
64## Default build sequence:
Roger Meiera0836f62013-05-05 00:19:38 +020065before_install:
henriqueac8d8e22014-07-23 23:31:04 +020066 - sh contrib/installDependencies.sh 1> /dev/null;
henriquec0a7d722014-07-26 13:11:12 +020067 - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/1.20/bin:$PATH
68 - cabal update
Roger Meiera0836f62013-05-05 00:19:38 +020069
Roger Meiera0836f62013-05-05 00:19:38 +020070install:
henriqueac8d8e22014-07-23 23:31:04 +020071 - sh bootstrap.sh;
72 - sh configure $CONFIG;
Roger Meiera0836f62013-05-05 00:19:38 +020073
74script:
henriqueac8d8e22014-07-23 23:31:04 +020075 - make -j4 && make dist;
76 - make cross -j4;
Roger Meiera0836f62013-05-05 00:19:38 +020077# TODO: add these steps
Roger Meiera0836f62013-05-05 00:19:38 +020078# - sh bootstrap.sh ; dpkg-buildpackage -tc