This repository has been archived by the owner on Dec 9, 2022. It is now read-only.
forked from MrKepzie/Natron
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
115 lines (101 loc) · 4.01 KB
/
.travis.yml
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# This is the http://travis-ci.org configuration file for Natron
env:
global:
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
# via the "travis encrypt" command using the project repo's public key
- secure: "Ss+/N7eLl1cnXRP+XmXuBuuMXTZ/0TUgiGxBJMYGVTmwG2tDDAfhsUh5laeb/OE7dNxwLK5uLeb/XXI4AlP6W7tfquIAAq6/PhKIiRTXDgU6Sfa5voHiM8ni1x9rBtmaOk6/8QjWWSisrQmy9DmxRfYtP2i/sKkpIcJHCs5OCpo="
# Coverity run condition (avoid matrix multiple runs), need customized
# build script. Need an update if new matrix cases.
- coverity_scan_run_condition='"$CC" = gcc -a "$TRAVIS_OS_NAME" != osx'
# Coverity script test mode (if true no uploading, avoid reaching the quota)
# usual processing: false.
- coverity_scan_script_test_mode=false
os:
- linux
- osx
language: cpp
compiler:
- gcc
- clang
python:
- "2.7"
addons:
apt:
sources:
# Natron requires boost >= 1.49 to compile in C++11 mode
# see http://stackoverflow.com/questions/11302758/error-while-copy-constructing-boostshared-ptr-using-c11
# we use the irie/boost ppa for that purpose
- irie-boost
# the PPA xorg-edgers contains cairo 1.12 (required for rotoscoping)
- xorg-edgers-ppa
# ubuntu-toolchain-r/test contains recent versions of gcc
- ubuntu-toolchain-r-test
packages:
- gcc-4.8
- g++-4.8
- libqt4-dev
- libglew-dev
- libboost-serialization-dev
- libexpat1-dev
- gdb
- libcairo2-dev
- python-dev
- python-pyside
- libpyside-dev
- libshiboken-dev
matrix:
exclude:
- os: osx
compiler: gcc
# Uncomment the following if OSX build times out (happens when building with python3)
# allow_failures:
# - os: osx # we exceed the time limit
# fast_finish: true
cache:
apt: true
directories:
- /usr/local/Cellar
# Travis CI has 1.5 cores per VM, take advantage of it
before_install:
- date -u
- uname -a
- export J='-j2'
install:
- . tools/travis/coverity_env.sh
- if [[ ${COVERITY_BUILD_DISABLED} == 1 ]];
then
exit 0;
fi
- tools/travis/install_dependencies.sh
# OSX build will timeout if we redirect its output
#> install_dependencies.log 2>&1
script:
- if [[ ${COVERITY_SCAN_BRANCH} == 1 ]];
then
echo "Don't build on coverty_scan branch.";
exit 0;
fi
- tools/travis/build.sh
after_success:
- if [ "$CC" = "gcc" -a "$TRAVIS_OS_NAME" == "linux" ]; then ln -s Tests/google-mock Tests/google-test .; cd Tests; gcov -lp *.gcno > /dev/null; cd ..; coveralls -n --exclude /usr/include --exclude 'Tests/google-test' --exclude 'Tests/google-mock' --exclude 'google-test' --exclude 'google-mock' --exclude 'libs/OpenFX' --exclude-pattern '.*/moc_.*\.cpp' --exclude-pattern='.*/Tests/.*\.cpp' --exclude-pattern='.*/Tests/.*\.h'; fi
# - if [ "$CC" = "gcc" -a "$TRAVIS_OS_NAME" == "linux" ]; then ln -s Tests/google-mock Tests/google-test .; coveralls --exclude /usr/include --exclude 'Tests/google-test' --exclude 'Tests/google-mock' --exclude 'google-test' --exclude 'google-mock' --exclude 'libs/OpenFX' --exclude-pattern '.*/moc_.*\.cpp' --exclude-pattern='.*/Tests/.*\.cpp' --exclude-pattern='.*/Tests/.*\.h' --gcov-options '\-lp'; fi
after_failure:
- cat install_dependencies.log || true
addons:
coverity_scan:
# customized build script URL
# TRAVIS_REPO_SLUG: owner_name/repo_name of repository currently being built
# TRAVIS_BRANCH: name of the branch currently being built
build_script_url: https://raw.githubusercontent.com/$TRAVIS_REPO_SLUG/$TRAVIS_BRANCH/.travis-coverity-scan-build.sh
# project metadata
project:
name: $TRAVIS_REPO_SLUG
# Where email notification of build analysis results will be sent
notification_email: [email protected]
# Commands to prepare for build_command
#build_command_prepend: ./configure
# This command will be added as an argument to "cov-build" to compile
# the project for analysis
build_command: "tools/travis/build.sh"
# Pattern to match selecting branches that will run analysis
branch_pattern: coverity_scan