.travis.yml: only use 3 threads for make
[supertux.git] / .travis.yml
1 # Travis-CI configuration file for SuperTuxKart
2 #
3 # Configuration manual:
4 # http://docs.travis-ci.com/user/build-configuration/
5 #
6 # Heavily borrowed from SuperTuxKart's travis.yml.
7 #
8 # SuperTuxKart's travis.yml file can be found here:
9 # https://github.com/supertuxkart/stk-code/blob/master/.travis.yml
10 # License: https://github.com/supertuxkart/stk-code/blob/master/COPYING
11 #
12
13 language: cpp
14
15 compiler:
16   - gcc
17   - clang
18
19 matrix:
20   fast_finish: true
21
22 env:
23   global:
24     # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
25     # via the "travis encrypt" command using the project repo's public key
26     - secure: "E3/UuL338/FVeKbWVBH8RWznD3ntT8BZxX9TDTCwoZFTPluI53Bk0G3MdDBFihFYLeTMfNxxrT2n+EnQtf9a6SrUIo1xFYWV3yKNHwFiS0LKn0IvhofPoRsg+Y190Hgq8djFSEU1Gk4pYATSfRYnAAbVxuL51CumGVBgBkplB0A="
27     - CMAKE_VERSION=3.2.1 SDL2_VERSION=2.0.3 SDL2IMAGE_VERSION=2.0.0
28   matrix:
29     - BUILD_TYPE="Debug"
30     - BUILD_TYPE="Release"
31  
32 before_install:
33   - sudo apt-get update -qq
34   - sudo apt-get install build-essential libogg-dev libvorbis-dev libphysfs-dev libglew-dev libopenal-dev libboost-all-dev
35
36   # Current gcc that supports C++ 11 features
37   - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
38   - sudo apt-get update -qq
39   - if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.9; fi
40   - if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi
41
42   # CMake
43   - wget http://www.cmake.org/files/v3.2/cmake-$CMAKE_VERSION.tar.gz -O - | tar xz
44   - (cd cmake-$CMAKE_VERSION && cmake . && make -j3 && sudo make install)
45
46   # SDL dependencies
47   - wget http://libsdl.org/release/SDL2-$SDL2_VERSION.tar.gz -O - | tar xz
48   - (cd SDL2-$SDL2_VERSION && ./configure --prefix=/usr && make -j3 && sudo make install)
49   - wget http://www.libsdl.org/projects/SDL_image/release/SDL2_image-$SDL2IMAGE_VERSION.tar.gz -O - | tar xz
50   - (cd SDL2_image-$SDL2IMAGE_VERSION && ./configure --prefix=/usr && make -j3 && sudo make install)
51
52 script:
53   # Clean from previous Travis build
54   - git clean -f
55   # Then build:
56   - mkdir "build-$BUILD_TYPE"
57   - cd "build-$BUILD_TYPE"
58   - cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
59   - make VERBOSE=1 -j3
60
61 addons:
62   coverity_scan:
63     project:
64       name: "SuperTuxTeam/supertux"
65       description: "Build submitted via Travis CI"
66     notification_email: supertux-commit@lists.lethargik.org
67     build_command_prepend: "cmake . && make clean"
68     build_command:   "make -j 3"
69     branch_pattern: coverity_scan
70
71 notifications:
72   email:
73     - supertux-commit@lists.lethargik.org