Skip to content

Commit 8469d79

Browse files
committed
[ci] Add ABI_compliance_check stage to GitLab CI
1 parent 744e8d4 commit 8469d79

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

.gitlab-ci.yml

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

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

0 commit comments

Comments
 (0)