forked from linuxwacom/libwacom
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
125 lines (118 loc) · 4.83 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
116
117
118
119
120
121
122
123
124
125
sudo: required
dist: xenial
language: c
compiler:
- gcc
- clang
addons:
apt:
packages:
- libgudev-1.0-dev
- libxml++2.6-dev
stages:
- test
- name: coverity
if: type = cron
env:
global:
- CFLAGS="-Werror -Wall -Wextra -Wno-error=sign-compare -Wno-error=unused-parameter -Wno-error=missing-field-initializers"
script:
- mkdir _build
- pushd _build > /dev/null
- ../autogen.sh --disable-silent-rules
- make
- make check || (cat **/test-suite.log && false)
- make distcheck
- popd > /dev/null
jobs:
include:
- stage: test
install:
- sudo apt-get install -y ninja-build python3-pip python3-setuptools valgrind
- sudo pip3 install meson
script:
- meson builddir
- ninja -C builddir test || (cat builddir/meson-logs/testlog.txt && false)
- ninja -C builddir dist
- meson configure builddir -Db_sanitize=address,undefined
- ninja -C builddir test || (cat builddir/meson-logs/testlog.txt && false)
- meson configure builddir -Db_sanitize=none
- pushd builddir > /dev/null
- meson test --setup=valgrind --suite=valgrind || (cat meson-logs/testlog-valgrind.txt && false)
- popd > /dev/null
# build from a tarball with meson
- stage: test
install:
- sudo apt-get install -y ninja-build python3-pip python3-setuptools valgrind tree
- sudo pip3 install meson
script:
- export INSTALLDIR="$PWD/_inst"
- mkdir -p "$INSTALLDIR"
- mkdir _build
- pushd _build > /dev/null
- ../autogen.sh --disable-silent-rules
- make && make dist
- popd > /dev/null
- mkdir -p _tarball_dir
- tar xf _build/libwacom-*.tar.bz2 -C _tarball_dir
- pushd _tarball_dir/libwacom-*/ > /dev/null
- meson builddir --prefix="$INSTALLDIR" && ninja -C builddir test && ninja -C builddir install
- popd > /dev/null
- tree "$INSTALLDIR"
# build from a tarball with autotools
- stage: test
install:
- sudo apt-get install -y tree
script:
- export INSTALLDIR="$PWD/_inst"
- mkdir -p "$INSTALLDIR"
- mkdir _build
- pushd _build > /dev/null
- ../autogen.sh --disable-silent-rules
- make && make dist
- popd > /dev/null
- mkdir -p _tarball_dir
- tar xf _build/libwacom-*.tar.bz2 -C _tarball_dir
- pushd _tarball_dir/libwacom-*/ > /dev/null
- ./autogen.sh --disable-silent-rules --prefix="$INSTALLDIR"
- make && make install
- popd > /dev/null
- tree "$INSTALLDIR"
# build from a tarball with configure only
- stage: test
install:
- sudo apt-get install -y tree
script:
- export INSTALLDIR="$PWD/_inst"
- mkdir -p "$INSTALLDIR"
- mkdir _build
- pushd _build > /dev/null
- ../autogen.sh --disable-silent-rules
- make && make dist
- popd > /dev/null
- mkdir -p _tarball_dir
- tar xf _build/libwacom-*.tar.bz2 -C _tarball_dir
- pushd _tarball_dir/libwacom-*/ > /dev/null
- ./configure --prefix="$INSTALLDIR"
- make && make install
- popd > /dev/null
- tree "$INSTALLDIR"
- stage: coverity
compiler: 'gcc'
env:
- BUILDTYPE="coverity"
- COVERITY_SCAN_PROJECT_NAME="linuxwacom/libwacom"
- COVERITY_SCAN_NOTIFICATION_EMAIL="[email protected]"
- COVERITY_SCAN_BUILD_COMMAND_PREPEND=""
- COVERITY_SCAN_BUILD_COMMAND="make"
- COVERITY_SCAN_BRANCH_PATTERN=".*"
- COVERITY_URL="https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh"
- secure: 'd0i9vJa6/lNDlCYMbKjNI77j1xnhw0ktBDAz0C10QbzIx17EsaYXOuAgO2ffWdIdGU7cP7yCH3gZGTRLnaPZfj7z1n7W81A8Hlosfc7AGcSW+EAo8T+CSxdFw1BfEPPWctsBP2y02INrOCno9k00pnW1shHlT7QzPxnHIsuPmHv21AbyUGbGk3nmvnfGg60dIYOLPdkZFNCGTNf6XtE0KVB0TLwS03/K8R1GnMtm5Qs0FXIDYMfASn1kKTPQOERYUIDABMCeYBfgHtiRvAzZkcxRnjVdoZvByDCfTeOtA3gS0bQ+nMt2UEHz2zzUS2egRGfAOafEqhvMrxEAdU9+HXNZIoPJfkLZWkUoe+3U/+Zj3NoIK/mpmtRFtHLyISp7kL/kQ9g8+cJPL5EI2RvIRM5cdf5Z47kI0Y0tQjceONz/7cHHCozZsrCLTjB4rlgWOxhbu+UL9C8vKYO1AX6rl1R/4J/WKc/ODztmNQem3u/GQEfHXyKVO+zrehAjtKb08wjQEGyMJYB7hxS3tDCb9/cCHkdi81Sx2WtF8mXp4TjCJafx7vyBo4VVlDuExvjodrZh/50KrzzZ+wGDE0tN42tJsuMGvJVTteNNk1pQ7r6XSlTOjbGsAQE+ri6Q8XBx63ES5Y1oN0bkA38KqhCfOrZIKXtx7QMLpPv2QKCaccg='
before_install:
- echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-
before_script:
- curl -fs "$COVERITY_URL" > coverity.sh && sed -i 's/"$status_code" != "201"/"$status_code" -lt 200 -o "$status_code" -ge 300/' coverity.sh && chmod +x coverity.sh
script:
- ./autogen.sh --disable-silent-rules
- bash ./coverity.sh
# vim: set expandtab tabstop=8 shiftwidth=2: