Skip to content

Commit 19eddf9

Browse files
committed
[ci] Add ABI_compliance_check stage to GitLab CI
1 parent e3e4b9e commit 19eddf9

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

.gitlab-ci.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,36 @@ OpenSUSE:
6969
<<: *default_config
7070
<<: *distro_build
7171

72+
ABI_compliance_check:
73+
# FIXME: update this to fedora:latest, once
74+
# https://bugzilla.redhat.com/show_bug.cgi?id=1726719 lands
75+
image: fedora:29
76+
stage: deploy
77+
variables:
78+
# abi-dumper complains if we don't pass -Og
79+
CXXFLAGS: "-Og -g3 -gstrict-dwarf"
80+
CFLAGS: "-Og -g3 -gstrict-dwarf"
81+
# enabling curl is broken on 0.27
82+
CMAKE_FLAGS: "-DEXIV2_ENABLE_VIDEO=ON -DEXIV2_ENABLE_WEBREADY=ON -DBUILD_WITH_CCACHE=ON -DEXIV2_ENABLE_CURL=OFF -DEXIV2_ENABLE_SSH=ON"
83+
<<: *default_config
84+
script:
85+
- dnf -y install abi-compliance-checker abi-dumper git
86+
- mkdir build-latest && pushd build-latest
87+
- cmake ${CMAKE_FLAGS} ..
88+
- make -j $(nproc)
89+
- abi-dumper lib/libexiv2.so -o ../ABI-1.dump -lver latest
90+
- popd
91+
- git checkout -f 0.27
92+
- mkdir build-0.27 && pushd build-0.27
93+
- cmake ${CMAKE_FLAGS} ..
94+
- make -j $(nproc)
95+
- abi-dumper lib/libexiv2.so -o ../ABI-0.dump -lver 0.27.0
96+
- popd
97+
- abi-compliance-checker -l libexiv2 -old ABI-0.dump -new ABI-1.dump
98+
artifacts:
99+
paths:
100+
- compat_reports/
101+
72102
Install:
73103
image: fedora:latest
74104
stage: deploy

0 commit comments

Comments
 (0)