build: Add code coverage support in the GitLab CI
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
diff --git a/.gitignore b/.gitignore
index 46ce104..c805925 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,8 @@ ChangeLog
*.a
*.log
*.trs
+*.gcda
+*.gcno
.dirstamp
.deps/
.libs/
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6fae8fe..ca88de2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,10 +1,19 @@
image: debian:buster
-test:
- before_script:
- - apt-get update -qq
- - apt-get install -qq -y --no-install-recommends
- git gcc make autoconf automake libtool libmd-dev
+before_script:
+ - apt-get update -qq
+ - apt-get install -qq -y --no-install-recommends
+ git gcc make autoconf automake libtool libmd-dev gcovr
+
+unit-tests:
+ stage: test
script:
- ./autogen && ./configure
- make check
+
+coverage:
+ stage: test
+ script:
+ - ./autogen && ./configure --disable-static
+ - make check CFLAGS="--coverage -O0 -ggdb" LDFLAGS="--coverage -O0 -ggdb"
+ - gcovr -s -e test/