@@ -3,40 +3,37 @@ language: cpp
3
3
4
4
sudo : required
5
5
6
- os :
7
- - linux
8
- - osx
9
-
10
- compiler :
11
- - gcc
12
- - clang
13
-
14
- env :
15
- - GCC_VERSION="5"
16
- - GCC_VERSION="native"
17
- - LLVM_VERSION="3.7"
18
- - LLVM_VERSION="native"
19
-
20
6
matrix :
21
- exclude :
22
- - compiler : gcc
23
- env : LLVM_VERSION="3.7"
24
- - compiler : gcc
25
- env : LLVM_VERSION="native"
26
- - compiler : clang
27
- env : GCC_VERSION="5"
28
- - compiler : clang
29
- env : GCC_VERSION="native"
7
+ include :
8
+ - os : linux
9
+ compiler : gcc
10
+ env : Tr_Compiler_Version="6"
11
+ # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
12
+ dist : trusty # broken compiler on 12.04
13
+ - os : linux
14
+ compiler : gcc
15
+ env : Tr_Compiler_Version="default"
16
+ - os : linux
17
+ compiler : clang
18
+ env : Tr_Compiler_Version="3.9"
19
+ # http://apt.llvm.org/, compiler not newer than available on debian testing
20
+ # https://packages.debian.org/search?suite=testing&keywords=clang-
21
+ dist : trusty
30
22
- os : linux
31
23
compiler : clang
32
- env : LLVM_VERSION="native" # broken compiler
24
+ env : Tr_Compiler_Version="default"
25
+ dist : trusty # broken compiler on 12.04
33
26
- os : osx
34
- compiler : gcc # unsupported compiler
27
+ # osx_image: xcode6.4 # seems broken and has lower priority in queue than default one
28
+ env : Tr_Xcode_Version="default"
29
+ # env: Tr_Xcode_Version="6.4"
30
+ # https://docs.travis-ci.com/user/osx-ci-environment/#OS-X-Version
31
+ # https://github.com/Homebrew/brew/blob/master/docs/Installation.md#requirements
32
+ fast_finish : true
33
+ allow_failures :
35
34
- os : osx
36
- compiler : clang
37
- env : LLVM_VERSION="3.7" # missing compiler by brew
38
- # allow_failures:
39
- # - os: osx
35
+ # it's not really acceptable to wait 40 minutes or sometimes up to even 3 hours
36
+ # for the result just because the queue for mac is always so long
40
37
41
38
git :
42
39
submodules : false
46
43
# - master
47
44
48
45
before_install :
49
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$GCC_VERSION" != "native" ]; then sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test; fi
50
- # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
51
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" == "clang++" ] && [ "$LLVM_VERSION" != "native" ]; then sudo add-apt-repository --yes 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise main'; fi
52
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" == "clang++" ] && [ "$LLVM_VERSION" != "native" ]; then sudo add-apt-repository --yes "deb http://llvm.org/apt/precise/ llvm-toolchain-precise-${LLVM_VERSION} main"; fi
53
- # http://llvm.org/apt/
54
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" == "clang++" ] && [ "$LLVM_VERSION" != "native" ]; then wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -; fi
55
- - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get update -qq; fi # UPDATE REPOS
46
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then ./.travis-before_install.sh "$CC" "$Tr_Compiler_Version"; fi
56
47
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew update; fi
57
- # - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get upgrade -qq; fi # UPGRADE SYSTEM TO LATEST PATCH LEVEL
58
- - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get install -y -qq; fi
59
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" = "g++" ] && [ "$GCC_VERSION" != "native" ]; then sudo apt-get install -qq gcc-${GCC_VERSION} g++-${GCC_VERSION}; fi
60
- - if [ "$CXX" = "g++" ] && [ "$GCC_VERSION" != "native" ]; then export CXX="g++-${GCC_VERSION}" CC="gcc-${GCC_VERSION}"; fi
61
- - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" == "clang++" ] && [ "$LLVM_VERSION" != "native" ]; then sudo apt-get --allow-unauthenticated -qq install clang-${LLVM_VERSION}; fi
62
- - if [ "$CXX" == "clang++" ] && [ "$LLVM_VERSION" != "native" ]; then export CXX="clang++-${LLVM_VERSION}" CC="clang-${LLVM_VERSION}"; fi
63
- - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo mk/linux/setupBuildDeps.sh --quiet; fi # INSTALL OUR DEPENDENCIES
64
48
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install sdl2 lua freetype ftgl libogg glew libvorbis cppunit glib fribidi miniupnpc wxmac; fi
49
+ # ^ not on travis also needed are: cmake + pkgconfig + xquartz (find by "search") + (maybe) git + (maybe) bash
50
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew outdated cmake || brew upgrade cmake; brew outdated pkgconfig || brew upgrade pkgconfig; fi
51
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew link --force gettext; fi
52
+ # ^ odd linking problems related with brew which is not creating links
53
+ - if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$Tr_Xcode_Version" = "6.4" ]; then brew install Caskroom/cask/xquartz; fi
54
+ - if [ "$Tr_Compiler_Version" != "" ] && [ "$Tr_Compiler_Version" != "default" ] && [ "$CC" = "gcc" ]; then export CXX="g++-${Tr_Compiler_Version}" CC="gcc-${Tr_Compiler_Version}"; fi
55
+ - if [ "$Tr_Compiler_Version" != "" ] && [ "$Tr_Compiler_Version" != "default" ] && [ "$CC" == "clang" ]; then export CXX="clang++-${Tr_Compiler_Version}" CC="clang-${Tr_Compiler_Version}"; fi
56
+ - $CC --version
65
57
- $CXX --version
66
58
- cmake --version
67
- - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo ./.travis-before_install.sh; fi
68
59
69
60
script :
70
61
# ALL THE BUILD COMMANDS HERE
71
- - if [ "$TRAVIS_OS_NAME" = "linux" ]; then mk/linux/build-mg.sh -c 4; fi
72
- - if [ "$TRAVIS_OS_NAME" = "osx" ]; then mk/macosx/build-mg.sh -c 4; fi
62
+ - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$(echo "$CC" | grep 'clang')" = "" ]; then mk/linux/build-mg.sh -c 4; fi
63
+ - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$(echo "$CC" | grep 'clang')" != "" ]; then mk/linux/build-mg.sh -w -c 4; fi
64
+ # ^ -w may be removed on more modern dist: than trusty, problems related with 'new wx+clang+old gcc'
65
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then mk/macos/build-mg.sh -c 4; fi
73
66
74
67
# https://docs.travis-ci.com/user/notifications/#IRC-notification
75
68
notifications :
@@ -80,7 +73,4 @@ notifications:
80
73
use_notice : true
81
74
on_success : change
82
75
template :
83
- # - "[%{repository_slug}#%{branch} @%{commit}] %{author}): %{message}"
84
- # - "Diff: %{compare_url}"
85
- # - "Build: %{build_url}"
86
76
- " [%{repository_name}#%{branch}@%{commit}] %{author}: %{message} %{build_url}"
0 commit comments