11# OSX/Linux (https://github.com/travis-ci-tester/toolchain-table)
22
33language :
4- - minimal
5-
6- os :
7- - linux
4+ - cpp
85
96# Container-based infrastructure (Linux)
107# * https://docs.travis-ci.com/user/migrating-from-legacy/#How-can-I-use-container-based-infrastructure%3F
@@ -13,50 +10,138 @@ sudo:
1310
1411# Install packages differs for container-based infrastructure
1512# * https://docs.travis-ci.com/user/migrating-from-legacy/#How-do-I-install-APT-sources-and-packages%3F
13+ # List of available packages:
14+ # * https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-trusty
15+ # List of available sources:
16+ # * https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
1617addons :
1718 apt :
19+ sources :
20+ - ubuntu-toolchain-r-test
1821 packages :
1922 - python3-pip
20- - enchant # for documentation
23+ - python3-setuptools
24+ - g++-7
2125
2226dist :
23- - trusty
27+ - xenial
2428
2529env :
26- - TOOLCHAIN=generate-documentation-test
30+ global :
31+ - secure : " s2o8nxRX/i7BSWsxlogBnyOGNO+3MhbcQrrU5y/Kk5+FwflN1vN+EwcR/kuE7U/O+gD8/ea+e0E8SSCkDwSj30NKZajYym2/DF0YSPNag1PGO9X2x53D4+clrhLPd89++bJpeOrAln1wYrYLLLFPMEq8Veo8g2ql9EHHWwwOqNM3jTPXg1fg4TOGSjgzFB3JnDo1Wjccc7eUj/nJcEMasxIBNg0n9/kjO+b9VYgxF3YVUMCnn+pdLah/AdnbwLWyvoWUz9nhRbXZx236rccFO5tzbKWON6NauIs4hiYxUC/Bu8nw5SZsjto4NwmrX0t7fAsUbMIUo4WBbI2zfao1oao0g/2HQj/QeY5yj+mkeaXosqdUbDZe2J+A+xjHu1fD6JI75jtnpOhFGYN5mPfq6fOiLcMn6Vr67T9NB1NvUpmRJ6sqzm48yxcNc9tmvsUz7BLDNbSN3YRNZ5XCVRnQfY9j1yc88oBvCPMtduUQyu5rd+c6mJ6zBhjJJvu7BM6OlscWPqiJm6+857wcDoBBDlMipZsIrrshOlUmfgyNgdrm/c1wEwDoRcnlb1hR+tKT5y653vytSs8cRJ+uG7+anofuTJJ/Der/a1A/P5ttkp2HGrAcWq4u0zYIpIiOsUlJ0uHcSl0DLQwB4JJgZBiBEibWjWqfjdXwkSVrcj833bU="
32+
33+ matrix :
34+ include :
35+ # Linux {
36+
37+ - os : linux
38+ env : >
39+ TOOLCHAIN=clang-cxx17
40+ PROJECT_DIR=examples/glbinding
41+
42+ - os : linux
43+ env : >
44+ TOOLCHAIN=gcc-7-cxx17
45+ PROJECT_DIR=examples/glbinding
46+
47+ - os : linux
48+ env : >
49+ TOOLCHAIN=android-ndk-r17-api-24-arm64-v8a-clang-libcxx14
50+ PROJECT_DIR=examples/glbinding
51+
52+ - os : linux
53+ env : >
54+ TOOLCHAIN=analyze-cxx17
55+ PROJECT_DIR=examples/glbinding
56+
57+ - os : linux
58+ env : >
59+ TOOLCHAIN=sanitize-address-cxx17
60+ PROJECT_DIR=examples/glbinding
61+
62+ - os : linux
63+ env : >
64+ TOOLCHAIN=sanitize-leak-cxx17
65+ PROJECT_DIR=examples/glbinding
66+
67+ - os : linux
68+ env : >
69+ TOOLCHAIN=sanitize-thread-cxx17
70+ PROJECT_DIR=examples/glbinding
71+
72+ # }
73+
74+ # OSX {
75+
76+ - os : osx
77+ osx_image : xcode9.4
78+ env : >
79+ TOOLCHAIN=osx-10-13-make-cxx14
80+ PROJECT_DIR=examples/glbinding
81+
82+ - os : osx
83+ osx_image : xcode9.4
84+ env : >
85+ TOOLCHAIN=osx-10-13-cxx14
86+ PROJECT_DIR=examples/glbinding
87+ # FIXME: iOS install step failes
88+ # * https://travis-ci.org/tnixeu/hunter/jobs/448503010
89+ # - os: osx
90+ # osx_image: xcode9.4
91+ # env: >
92+ # TOOLCHAIN=ios-nocodesign-11-4-dep-9-3
93+ # PROJECT_DIR=examples/glbinding
94+ #
95+ # }
2796
2897install :
2998 # Info about OS
3099 - uname -a
31100
101+ # Info about available disk space
102+ - df -h $HOME
103+
104+ # Disable autoupdate
105+ # * https://github.com/Homebrew/brew/blob/7d31a70373edae4d8e78d91a4cbc05324bebc3ba/Library/Homebrew/manpages/brew.1.md.erb#L202
106+ - export HOMEBREW_NO_AUTO_UPDATE=1
107+
32108 # Install Python 3
109+ - if [[ "`uname`" == "Darwin" ]]; then travis_retry brew upgrade python || echo "Ignoring failure..."; fi
33110 - if [[ "`uname`" == "Darwin" ]]; then travis_retry brew install python3; fi
34111
35112 # Install Python package 'requests'
36113 # 'easy_install3' is not installed by 'brew install python3' on OS X 10.9 Maverick
37114 - if [[ "`uname`" == "Darwin" ]]; then pip3 install requests; fi
115+ - if [[ "`uname`" == "Darwin" ]]; then pip3 install gitpython; fi
38116 - if [[ "`uname`" == "Linux" ]]; then travis_retry pip3 install --user requests; fi
117+ - if [[ "`uname`" == "Linux" ]]; then travis_retry pip3 install --user gitpython; fi
39118
40119 # Install latest Polly toolchains and scripts
41- - wget https://github.com/cpp-pm /polly/archive/master.zip
42- - unzip master.zip
120+ - wget --quiet https://github.com/ruslo /polly/archive/master.zip
121+ - unzip -q master.zip
43122 - POLLY_ROOT="`pwd`/polly-master"
44123 - export PATH="${POLLY_ROOT}/bin:${PATH}"
45124
46125 # Install dependencies (CMake, Android NDK)
47- - install-ci-dependencies.py
126+ - install-ci-dependencies.py --prune-archives
48127
49128 # Tune locations
50129 - export PATH="`pwd`/_ci/cmake/bin:${PATH}"
51130
52131 # Installed if toolchain is Android (otherwise directory doesn't exist)
53132 - export ANDROID_NDK_r10e="`pwd`/_ci/android-ndk-r10e"
54133 - export ANDROID_NDK_r11c="`pwd`/_ci/android-ndk-r11c"
134+ - export ANDROID_NDK_r15c="`pwd`/_ci/android-ndk-r15c"
135+ - export ANDROID_NDK_r16b="`pwd`/_ci/android-ndk-r16b"
136+ - export ANDROID_NDK_r17="`pwd`/_ci/android-ndk-r17"
55137
56138script :
57- - cd docs
58- - ./jenkins.sh
139+ - travis_wait 60 python3 ./jenkins.py
59140
141+ # https://docs.travis-ci.com/user/customizing-the-build/#Whitelisting-or-blacklisting-branches
142+ # Exclude branch 'pkg.template'. Nothing to build there.
60143branches :
61- only :
62- - master
144+ except :
145+ - pkg.template
146+ - /^pr\..*/
147+ - /^v[0-9]+\.[0-9]+\.[0-9]+$/
0 commit comments