forked from xaptum/xaptum-tpm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
89 lines (83 loc) · 2.47 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
# Copyright 2017 Xaptum, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License
language: c
compiler: gcc
env:
global:
- XTPM_BUILD_DIR=${TRAVIS_BUILD_DIR}/build
- XTPM_INSTALL_DIR=${TRAVIS_BUILD_DIR}/install
- IBM_TPM_DIR=${TRAVIS_BUILD_DIR}/ibm-tpm-simulator
- IBM_TPM_TAG=1332
- SHARED_LIBS=ON
before_script:
- ${TRAVIS_BUILD_DIR}/.travis/install-ibm-tpm2.sh ${IBM_TPM_TAG} ${IBM_TPM_DIR}
- mkdir -p ${XTPM_BUILD_DIR}
- mkdir -p ${XTPM_INSTALL_DIR}
- pushd ${XTPM_BUILD_DIR}
- |
cmake ${TRAVIS_BUILD_DIR} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${XTPM_INSTALL_DIR} \
-DTEST_USE_TCP_TPM=ON -DBUILD_SHARED_LIBS=${SHARED_LIBS} -DBUILD_UTILS=ON
- popd
script:
- pushd ${XTPM_BUILD_DIR}
- cmake --build . --target install -- -j2
- ${TRAVIS_BUILD_DIR}/.travis/build-against-installed.sh ${XTPM_INSTALL_DIR} ${TRAVIS_BUILD_DIR}
- ${TRAVIS_BUILD_DIR}/.travis/run-ibm-tpm2.sh ${IBM_TPM_DIR}
- ctest -VV
- popd
matrix:
include:
- name: "Dev build, gcc"
env:
- TYPE=DEV
- BUILD_TYPE=Dev
- name: "Dev build, gcc, static library"
env:
- TYPE=DEV
- BUILD_TYPE=Dev
- SHARED_LIBS=OFF
- name: "DevDebug build, gcc"
env:
- TYPE=DEBUG
- BUILD_TYPE=DevDebug
- name: "Release build, gcc"
env:
- TYPE=RELEASE
- BUILD_TYPE=Release
- name: "Debug build, gcc"
env:
- TYPE=DEBUG
- BUILD_TYPE=Debug
- name: "Release build, clang"
compiler: clang
env:
- TYPE=RELEASE-WITH-CLANG
- BUILD_TYPE=Release
- name: "CPPCheck"
env:
- TYPE=CPPCHECK
- BUILD_TYPE=Release
addons:
apt:
packages:
- cppcheck
before_script:
script:
- ${TRAVIS_BUILD_DIR}/.travis/run-cppcheck.sh
- name: "Sanitize build, clang"
sudo: true
compiler: clang
env:
- TYPE=SANITIZE
- BUILD_TYPE=RelWithSanitize