2018-12-22 06:46:20 -08:00
|
|
|
version: 2
|
2018-12-22 14:42:26 -08:00
|
|
|
|
2018-12-22 06:46:20 -08:00
|
|
|
jobs:
|
2018-12-22 14:42:26 -08:00
|
|
|
checkout_code:
|
2018-12-22 06:46:20 -08:00
|
|
|
docker:
|
2018-12-22 14:42:26 -08:00
|
|
|
- image: borisfaure/terminology-ci:latest
|
2018-12-22 06:46:20 -08:00
|
|
|
steps:
|
|
|
|
- run: |
|
|
|
|
cd /terminology
|
|
|
|
git pull --ff-only
|
|
|
|
if [ -n "$CIRCLE_PR_NUMBER" ]; then
|
|
|
|
git fetch origin pull/$CIRCLE_PR_NUMBER/head
|
|
|
|
fi
|
|
|
|
if [ -n "$CIRCLE_SHA1" ]; then
|
|
|
|
git reset --hard $CIRCLE_SHA1
|
2018-12-23 02:21:19 -08:00
|
|
|
else
|
|
|
|
git reset --hard origin/master
|
2018-12-22 06:46:20 -08:00
|
|
|
fi
|
2018-12-22 14:42:26 -08:00
|
|
|
- save_cache:
|
2018-12-23 02:12:08 -08:00
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
2018-12-22 14:42:26 -08:00
|
|
|
paths:
|
|
|
|
- /terminology
|
2019-10-17 13:41:03 -07:00
|
|
|
build_minimal_gcc_efl-1.20:
|
2019-05-21 02:05:06 -07:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2019-10-17 13:41:03 -07:00
|
|
|
command: apk add /pkg/efl-1.20.7-r0.apk /pkg/efl-dev-1.20.7-r0.apk
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
2019-10-17 13:41:03 -07:00
|
|
|
name: Compile with GCC
|
2019-05-21 02:05:06 -07:00
|
|
|
command: |
|
|
|
|
cd /terminology
|
2019-10-17 13:41:03 -07:00
|
|
|
meson . build
|
2019-05-21 02:05:06 -07:00
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
2019-10-17 13:41:03 -07:00
|
|
|
build_minimal_gcc_efl-1.21:
|
2019-07-07 09:14:22 -07:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2019-10-17 13:41:03 -07:00
|
|
|
command: apk add /pkg/efl-1.21.1-r0.apk /pkg/efl-dev-1.21.1-r0.apk
|
2019-07-07 09:14:22 -07:00
|
|
|
- run:
|
2019-10-17 13:41:03 -07:00
|
|
|
name: Compile with GCC
|
2019-07-07 09:14:22 -07:00
|
|
|
command: |
|
|
|
|
cd /terminology
|
2019-10-17 13:41:03 -07:00
|
|
|
meson . build
|
2019-07-07 09:14:22 -07:00
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
2019-10-17 13:41:03 -07:00
|
|
|
build_minimal_gcc_efl-1.22:
|
2018-12-22 14:42:26 -08:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
2018-12-23 02:12:08 -08:00
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2019-10-14 14:27:11 -07:00
|
|
|
command: apk add /pkg/efl-1.22.6-r0.apk /pkg/efl-dev-1.22.6-r0.apk
|
2019-01-12 08:17:43 -08:00
|
|
|
- run:
|
2019-01-12 08:24:07 -08:00
|
|
|
name: Compile with GCC
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
2019-10-17 13:41:03 -07:00
|
|
|
meson . build
|
2019-01-12 08:24:07 -08:00
|
|
|
meson configure build
|
|
|
|
cd build
|
2019-05-21 02:05:06 -07:00
|
|
|
ninja -j4
|
2019-10-17 13:41:03 -07:00
|
|
|
build_minimal_gcc_efl-1.23:
|
2018-12-23 02:12:08 -08:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
2019-05-21 02:05:06 -07:00
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2020-04-01 10:03:10 -07:00
|
|
|
command: apk add /pkg/efl-1.23.3-r2.apk /pkg/efl-dev-1.23.3-r2.apk
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Compile with GCC
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
|
|
|
meson . build
|
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
2019-10-17 13:41:03 -07:00
|
|
|
build_full_gcc_efl_latest:
|
2018-12-22 14:42:26 -08:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
2018-12-23 02:12:08 -08:00
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2019-10-17 13:41:03 -07:00
|
|
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Compile with GCC
|
2019-10-17 13:41:03 -07:00
|
|
|
environment:
|
|
|
|
CFLAGS: -O0 -g
|
2019-05-21 02:05:06 -07:00
|
|
|
command: |
|
|
|
|
cd /terminology
|
2019-10-17 13:41:03 -07:00
|
|
|
meson -Dtests=true -Dfuzzing=true -Db_coverage=true . build
|
2019-05-21 02:05:06 -07:00
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
2019-10-17 13:41:03 -07:00
|
|
|
- save_cache:
|
|
|
|
key: build_full_gcc_efl_latest-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
paths:
|
|
|
|
- /terminology
|
|
|
|
tests_gcc_efl_latest:
|
2019-05-21 02:05:06 -07:00
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
2019-10-17 13:41:03 -07:00
|
|
|
key: build_full_gcc_efl_latest-{{ .Environment.CIRCLE_SHA1 }}
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Install EFL
|
2019-10-17 13:41:03 -07:00
|
|
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk
|
2019-05-21 02:05:06 -07:00
|
|
|
- run:
|
|
|
|
name: Launch tests
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
|
|
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/
|
|
|
|
- run:
|
|
|
|
name: codecov
|
|
|
|
command: |
|
|
|
|
cd /terminology/build/
|
|
|
|
cd src/bin
|
|
|
|
rm -fr *@@terminology@exe *@@tyalpha@exe *@@tybg@exe *@@tycat@exe
|
|
|
|
rm -fr *@@tyfuzz@exe *@@tyls@exe *@@typop@exe *@@tyq@exe
|
|
|
|
rm -fr *@@tysend@exe
|
|
|
|
cd /terminology/build/
|
|
|
|
curl -s https://codecov.io/bash > .codecov
|
|
|
|
chmod +x .codecov
|
|
|
|
sed -i.bak 's/execdir/exec/' .codecov
|
|
|
|
./.codecov -Z
|
2019-10-17 13:41:03 -07:00
|
|
|
build_full_clang_efl_latest:
|
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
environment:
|
|
|
|
- CC: clang
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
- run:
|
|
|
|
name: Install EFL
|
|
|
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk
|
|
|
|
- run:
|
|
|
|
name: Compile with Clang
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
|
|
|
meson -Dtests=true -Dfuzzing=true . build
|
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
|
|
|
build_and_test_clang_ubsan_efl_latest:
|
|
|
|
docker:
|
|
|
|
- image: borisfaure/terminology-ci:latest
|
|
|
|
environment:
|
|
|
|
- CC: clang
|
|
|
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=undefined -fno-sanitize-recover=undefined
|
|
|
|
steps:
|
|
|
|
- restore_cache:
|
|
|
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }}
|
|
|
|
- run:
|
|
|
|
name: Install EFL
|
|
|
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk
|
|
|
|
- run:
|
|
|
|
name: Compile with Clang
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
|
|
|
meson -Dtests=true . build
|
|
|
|
meson configure build
|
|
|
|
cd build
|
|
|
|
ninja -j4
|
|
|
|
- run:
|
|
|
|
name: Launch tests
|
|
|
|
command: |
|
|
|
|
cd /terminology
|
|
|
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/
|
2018-12-22 06:46:20 -08:00
|
|
|
path: /terminology
|
2018-12-22 14:42:26 -08:00
|
|
|
workflows:
|
|
|
|
version: 2
|
|
|
|
build-and-deploy:
|
|
|
|
jobs:
|
|
|
|
- checkout_code
|
2019-10-17 13:41:03 -07:00
|
|
|
- build_minimal_gcc_efl-1.20:
|
2019-05-21 02:05:06 -07:00
|
|
|
requires:
|
|
|
|
- checkout_code
|
|
|
|
- build_minimal_gcc_efl-1.21:
|
|
|
|
requires:
|
|
|
|
- checkout_code
|
2019-10-17 13:41:03 -07:00
|
|
|
- build_minimal_gcc_efl-1.22:
|
|
|
|
requires:
|
|
|
|
- checkout_code
|
|
|
|
- build_minimal_gcc_efl-1.23:
|
|
|
|
requires:
|
|
|
|
- checkout_code
|
|
|
|
- build_full_gcc_efl_latest:
|
2018-12-22 14:42:26 -08:00
|
|
|
requires:
|
|
|
|
- checkout_code
|
2019-10-17 13:41:03 -07:00
|
|
|
- tests_gcc_efl_latest:
|
2018-12-23 02:12:08 -08:00
|
|
|
requires:
|
2019-10-17 13:41:03 -07:00
|
|
|
- build_full_gcc_efl_latest
|
|
|
|
- build_full_clang_efl_latest:
|
2018-12-22 14:42:26 -08:00
|
|
|
requires:
|
|
|
|
- checkout_code
|
2019-10-17 13:41:03 -07:00
|
|
|
- build_and_test_clang_ubsan_efl_latest:
|
2019-07-07 09:14:22 -07:00
|
|
|
requires:
|
|
|
|
- checkout_code
|