-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
80 lines (74 loc) · 1.92 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
language: c
dist: xenial
cache:
apt: true
timeout: 1000 #In seconds
directories:
- $TRAVIS_BUILD_DIR/riscv
git:
submodules: false
depth: 1
env:
- RISCV=$TRAVIS_BUILD_DIR/riscv
PATH=$PATH:$RISCV/bin
KEYSTONE_SDK_DIR=$TRAVIS_BUILD_DIR/keystone-sdk/build
SDK_MIN_REVISION=$(cat SDK_MIN_REVISION)
addons:
apt:
packages:
- autoconf
- automake
- autotools-dev
- build-essential
- gcc
- git
before_install:
- git submodule update --init --recursive --depth=1
- ./.fast-setup.sh
- git clone "https://github.com/keystone-enclave/keystone-sdk"
- pushd keystone-sdk
- git checkout $SDK_MIN_REVISION
- mkdir build
- cd build
- cmake ..
- make
- make install
- popd
jobs:
include:
- stage: clang-format
if: type = pull_request
script:
- FORMAT_COMMIT_START=$(echo $TRAVIS_COMMIT_RANGE | cut -d. -f1)
- echo "Formatting from $FORMAT_COMMIT_START"
- git clang-format --diff $FORMAT_COMMIT_START | tee .format-diff
- \[ "$(cat .format-diff)" = "no modified files to format" \] || \[ "$(cat .format-diff)" = "clang-format did not modify any files" \]
- stage: default build
script:
- ./build.sh
- stage: USE_FREEMEM
script:
- ./build.sh freemem
- stage: USE_LINUX_SYSCALL + USE_FREEMEM
script:
- ./build.sh linux_syscall freemem
- stage: USE_PAGING
script:
- ./build.sh paging
- stage: USE_PAGE_CRYPTO
script:
- ./build.sh paging page_crypto
- stage: USE_PAGE_HASH
script:
- ./build.sh paging page_hash
- stage: USE_PAGE_CRYPTO + USE_PAGE_HASH
script:
- ./build.sh paging page_crypto page_hash
- stage: test
script:
- mkdir -p obj/test
- pushd obj/test
- cmake ../../test
- make
- ctest -VV || ( cat obj/test/Testing/Temporary/LastTest.log && false )
- popd