1
- env :
2
- global :
3
- - AVTRANSCODER_BUILD=${TRAVIS_BUILD_DIR}/build-avtranscoder
4
- - AVTRANSCODER_INSTALL=${TRAVIS_BUILD_DIR}/install-avtranscoder
5
- - DEPENDENCY_INSTALL=${TRAVIS_BUILD_DIR}/install-dependency
6
- - CI_NODE_TOTAL=2
7
- matrix :
8
- - DEPENDENCY_MODE=libav
9
- - DEPENDENCY_MODE=ffmpeg
10
-
11
1
language : cpp
12
2
13
3
os :
@@ -18,6 +8,21 @@ compiler:
18
8
- gcc
19
9
- clang
20
10
11
+ env :
12
+ global :
13
+ - AVTRANSCODER_BUILD=${TRAVIS_BUILD_DIR}/build-avtranscoder
14
+ - AVTRANSCODER_INSTALL=${TRAVIS_BUILD_DIR}/install-avtranscoder
15
+ - DEPENDENCY_INSTALL=${TRAVIS_BUILD_DIR}/install-dependency
16
+ - CI_NODE_TOTAL=2
17
+ matrix :
18
+ - DEPENDENCY_MODE=libav ENABLE_COVERAGE=true
19
+ - DEPENDENCY_MODE=libav ENABLE_COVERAGE=false
20
+ - DEPENDENCY_MODE=ffmpeg ENABLE_COVERAGE=true
21
+ - DEPENDENCY_MODE=ffmpeg ENABLE_COVERAGE=false
22
+
23
+ # This results in a 2×2×2x2 build matrix.
24
+ # Where the variables are: os / compiler / DEPENDENCY_MODE / ENABLE_COVERAGE
25
+
21
26
before_script :
22
27
- env | sort
23
28
- date -u
@@ -26,7 +31,7 @@ before_script:
26
31
- cd ${TRAVIS_BUILD_DIR}
27
32
28
33
# install coverage tools
29
- - ./tools/travis.gcc.install.coverage.sh
34
+ - if [ ${ENABLE_COVERAGE} ]; then ./tools/travis.gcc.install.coverage.sh; fi
30
35
31
36
# install avtranscoder dependencies
32
37
- if [ ${TRAVIS_OS_NAME} = "linux" ]; then ./tools/travis.linux.install.deps.sh; fi
@@ -36,7 +41,7 @@ script:
36
41
# build
37
42
- mkdir -p ${AVTRANSCODER_BUILD}
38
43
- cd ${AVTRANSCODER_BUILD}
39
- - cmake .. -DCMAKE_INSTALL_PREFIX=${AVTRANSCODER_INSTALL} -DCMAKE_PREFIX_PATH=${DEPENDENCY_INSTALL} -DCMAKE_BUILD_TYPE=Release -DAVTRANSCODER_PYTHON_VERSION_OF_BINDING=2.7 -DAVTRANSCODER_COVERAGE=True
44
+ - cmake .. -DCMAKE_INSTALL_PREFIX=${AVTRANSCODER_INSTALL} -DCMAKE_PREFIX_PATH=${DEPENDENCY_INSTALL} -DCMAKE_BUILD_TYPE=Release -DAVTRANSCODER_PYTHON_VERSION_OF_BINDING=2.7 -DAVTRANSCODER_COVERAGE=${ENABLE_COVERAGE}
40
45
- make -j${CI_NODE_TOTAL}
41
46
- make install
42
47
@@ -47,21 +52,19 @@ after_success:
47
52
- cd ${TRAVIS_BUILD_DIR}
48
53
49
54
# generate coverage for coveralls
50
- - if [ ${CC} = "gcc" ]; then ./tools/travis.gcc.generate.coverage.sh; fi
55
+ - if [ ${ENABLE_COVERAGE} ]; then ./tools/travis.gcc.generate.coverage.sh; fi
51
56
52
57
before_deploy :
53
58
# create archive
54
59
- cd ${TRAVIS_BUILD_DIR}
55
60
- tar -cvzf avtranscoder-${TRAVIS_OS_NAME}-${CC}-${DEPENDENCY_MODE}.tgz ${DEPENDENCY_INSTALL} ${AVTRANSCODER_INSTALL}
56
61
57
62
deploy :
58
- # if the commit is tagged, deploy using github release service
59
63
provider : releases
60
64
api_key :
61
65
secure : ${GITHUB_RELEASE_API_KEY}
62
66
file : avtranscoder-${TRAVIS_OS_NAME}-${CC}-${DEPENDENCY_MODE}.tgz
63
67
skip_cleanup : true
64
68
on :
65
- tags : true
66
- condition : ${TRAVIS_OS_NAME} = "linux"
67
-
69
+ branch : master
70
+ condition : ${ENABLE_COVERAGE} = false
0 commit comments