summaryrefslogtreecommitdiffstats
path: root/.travis.yml
blob: a2a518751107a0000903df92518cc506863d1567 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
language: cpp
cache: ccache

# Use Linux by default
os: linux
dist: bionic

# TODO: add ARM64, PPC, IBM builds when we find CMake for them

jobs:
  include:
    # OSX workers are slower to start up.  Having these first in the build matrix makes travis faster overall.
    - name: "AppleClang - Release"
      os: osx
      osx_image: xcode11.3
      before_install:
        - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
      env: &Release
        - TRAVIS_CUBERITE_BUILD_TYPE=Release

    - name: "AppleClang - Debug"
      os: osx
      osx_image: xcode11.3
      before_install:
        - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
      env: &Debug
        - TRAVIS_CUBERITE_BUILD_TYPE=Debug

    - name: "Clang 7.0 - Release"
      compiler: clang
      before_install: &use-cmake
        - wget --output-document=${HOME}/CMake http://cmake.org/files/v3.17/cmake-3.17.2-Linux-x86_64.tar.gz
        - tar --extract --one-top-level=${HOME}/SeeMake --strip-components 1 --file ${HOME}/CMake
        - export PATH=${HOME}/SeeMake/bin/:${PATH}
      env: *Release

    - name: "Clang 7.0 - Debug"
      compiler: clang
      before_install: *use-cmake
      env: *Debug

    - name: "GCC 7.4 - Release, CMake 3.12, No Unity"
      compiler: gcc
      before_install:
        - wget --output-document=${HOME}/CMake http://cmake.org/files/v3.13/cmake-3.13.0-Linux-x86_64.tar.gz
        - tar --extract --one-top-level=${HOME}/SeeMake --strip-components 1 --file ${HOME}/CMake
        - export PATH=${HOME}/SeeMake/bin/:${PATH}
      env:
        - TRAVIS_CUBERITE_BUILD_TYPE=Release
        - TRAVIS_CUBERITE_UNITY_BUILDS=No

    - name: "GCC 7.4 - Debug"
      compiler: gcc
      before_install: *use-cmake
      env: *Debug

before_script:
  - export PATH=$(echo "$PATH" | sed -e 's/:\/usr\/lib\/ccache//')
script: ./travisbuild.sh

notifications:
  email:
    on_success: change
    on_failure: always
branches:
  only:
    - master