-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
41 lines (41 loc) · 1.73 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
sudo: required
language: c
notifications:
email: false
before_install:
- sudo apt-get update -qq
- sudo apt-get install gcc
- sudo apt-get install gcovr
- sudo apt-get install python3
- sudo apt-get install python3-pip
- wget https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip
- sudo unzip ninja-linux.zip -d /usr/local/bin/
- sudo update-alternatives --install /usr/bin/ninja ninja /usr/local/bin/ninja 1 --force
- sudo pip3 install meson==0.44.0
- sudo pip install codecov
- sudo apt-get install doxygen
- "sudo apt-get install graphviz" # required for drawing dependecy graphs
- "sudo pip install --upgrade pip" # last version
- "sudo pip install pydot-ng pyparsing" # required for drawing dependecy graphs
after_success:
- bash <(curl -s https://codecov.io/bash) -g '*test*' -g '*main*' -g '*piprint*' -g '*pichecks*' -g '*pierror*' -g '*pilisp*'
script:
- curl --data-binary @codecov.yml https://codecov.io/validate
- meson build -Dc_args=-Og -Db_coverage=true # enable coverage
- ninja -C build # build project
- MESON_TESTTHREADS=1 ninja test -C build # run tests
- gcovr -r . -e '.*/test/.*' -e '.*pitestutils*' -e '.*main*' -e '.*pilisp*' -e '.*pichecks*' -e '.*pierror*'
- doxygen # auto generate documentation
- mv img/ftv2doc.png docs/html/
- mv img/ftv2folderclosed.png docs/html/
- mv img/ftv2folderopen.png docs/html/
deploy:
provider: pages
local-dir: docs/html
skip-cleanup: true
file_glob: true
file: docs/*
overwrite: true
github-token: $GITHUB_TOKEN
on:
branch: master