blob: 4ab649a318a70adb9f0bcfa33c8fa03e8409b21d [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
29# see what we need: http://thrift.apache.org/docs/install/ubuntu
30before_install:
henrique48b18972014-06-10 15:19:55 +020031 - sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu/ trusty main restricted" -y
henriquea139c912014-04-02 14:45:39 +020032 - sudo apt-get update -qq
henriquece79d592014-05-01 15:22:38 +020033 - 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
henrique48b18972014-06-10 15:19:55 +020034 - dpkg -S /usr/include/boost/version.hpp
Roger Meiera0836f62013-05-05 00:19:38 +020035# Java
Roger Meier66350582014-01-15 09:51:48 +010036 - sudo apt-get install -qq ant
Roger Meiera0836f62013-05-05 00:19:38 +020037# Ruby
henriqued17f1c92014-04-30 16:21:25 +020038 - gem install bundler -v 1.3.5 || true
Roger Meiera0836f62013-05-05 00:19:38 +020039# Python
Roger Meier169d6552014-01-15 21:48:10 +010040# - sudo apt-get install -qq python-all python-all-dev python-all-dbg
Roger Meiera0836f62013-05-05 00:19:38 +020041# Perl
Roger Meieraae8acb2014-01-15 13:55:09 +010042 - sudo apt-get install -qq libbit-vector-perl libclass-accessor-class-perl
Roger Meiera0836f62013-05-05 00:19:38 +020043# PHP
henriquea139c912014-04-02 14:45:39 +020044 - sudo apt-get install -qq php5-dev php5-cli phpunit php-pear
Roger Meier66350582014-01-15 09:51:48 +010045 - sudo pear channel-discover pear.phpunit.de
46 - sudo pear channel-discover pear.symfony.com
henriquea139c912014-04-02 14:45:39 +020047# - sudo pear channel-discover components.ez.no
Roger Meier66350582014-01-15 09:51:48 +010048 - sudo pear update-channels
49 - sudo pear upgrade-all
50 - sudo pear install --alldeps phpunit/PHPUnit
Roger Meiera0836f62013-05-05 00:19:38 +020051# c_glib
52 - sudo apt-get install -qq libglib2.0-dev
53# Erlang
Roger Meier169d6552014-01-15 21:48:10 +010054# - sudo apt-get install -qq erlang-base erlang-eunit erlang-dev
Roger Meiera0836f62013-05-05 00:19:38 +020055# Csharp
Henrique Mendonça0e07ec82013-06-08 09:40:21 +020056 - sudo apt-get install -qq mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console
Roger Meiera0836f62013-05-05 00:19:38 +020057# Haskell
Roger Meier169d6552014-01-15 21:48:10 +010058# - sudo apt-get install -qq ghc6 cabal-install libghc6-binary-dev libghc6-network-dev libghc6-http-dev
Roger Meiera0836f62013-05-05 00:19:38 +020059# Thrift Compiler for Windows
henrique48b18972014-06-10 15:19:55 +020060 - sudo apt-get install -qq mingw32
Henrique08c34ea2013-05-11 19:29:19 +020061# node.js
62 - sudo apt-get install -qq nodejs npm
Henrique Mendonça0e07ec82013-06-08 09:40:21 +020063 - sudo npm install nodeunit -g || true
Roger Meiera0836f62013-05-05 00:19:38 +020064
Roger Meiera0836f62013-05-05 00:19:38 +020065install:
66 - sh bootstrap.sh
67
68script:
Roger Meiera0836f62013-05-05 00:19:38 +020069# TODO: fix these languages
henriquead4df162014-05-20 13:18:45 +020070 - sh configure --without-erlang --without-haskell --without-python --without-go --without-lua
henrique55087a42014-06-17 12:36:39 +020071 - make -j4 && make dist
72 - make cross -j4
73 - mkdir build_native && cd build_native && cmake ../compiler/cpp/ && make -j4; cd ..
74 - mkdir build_mingw32 && cd build_mingw32 && cmake -DCMAKE_TOOLCHAIN_FILE=../contrib/mingw32-toolchain.cmake ../compiler/cpp/ && make -j4; cd ..
Roger Meiera0836f62013-05-05 00:19:38 +020075# TODO: add these steps
Roger Meiera0836f62013-05-05 00:19:38 +020076# - sh bootstrap.sh ; dpkg-buildpackage -tc