Add ABI check to CI
This adds a dump of current ABIs (which will probably be released as 1.4.0) to the test directory, and adds a comparison to current ABIs to the distcheck
This commit is contained in:
parent
c90b3ea3c0
commit
cd031fb7a9
20
.github/workflows/distcheck.yml
vendored
20
.github/workflows/distcheck.yml
vendored
@ -1,4 +1,4 @@
|
||||
name: Autotools distcheck
|
||||
name: Autotools distcheck and ABI check
|
||||
|
||||
on:
|
||||
push:
|
||||
@ -9,14 +9,14 @@ on:
|
||||
|
||||
jobs:
|
||||
distcheck:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install Linux dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libtool-bin libogg-dev doxygen libxml2-utils w3c-sgml-lib pandoc
|
||||
sudo apt-get install -y libtool-bin libogg-dev doxygen libxml2-utils w3c-sgml-lib pandoc abi-compliance-checker
|
||||
|
||||
- name: Build with Autotools
|
||||
run: |
|
||||
@ -26,9 +26,19 @@ jobs:
|
||||
- name: Build and check source package
|
||||
run: make distcheck
|
||||
|
||||
- name: Check binary compatibility
|
||||
run: |
|
||||
make
|
||||
unxz --keep test/abi/abi-libFLAC-1.4.0.dump.xz
|
||||
unxz --keep test/abi/abi-libFLAC++-1.4.0.dump.xz
|
||||
abi-compliance-checker -l flac -old test/abi/abi-libFLAC-1.4.0.dump -new test/abi/abi-descriptor-libFLAC-1.4.0.xml
|
||||
abi-compliance-checker -l flac++ -old test/abi/abi-libFLAC++-1.4.0.dump -new test/abi/abi-descriptor-libFLAC++-1.4.0.xml
|
||||
|
||||
- name: Upload logs on failure
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
if: failure()
|
||||
with:
|
||||
name: flac-${{ github.sha }}-${{ github.run_id }}-logs
|
||||
path: ./**/*.log
|
||||
path: |
|
||||
./flac-**/**/*.log
|
||||
./compat_reports
|
||||
|
11
test/abi/abi-descriptor-libFLAC++-1.4.0.xml
Normal file
11
test/abi/abi-descriptor-libFLAC++-1.4.0.xml
Normal file
@ -0,0 +1,11 @@
|
||||
<version>
|
||||
1.4.0
|
||||
</version>
|
||||
|
||||
<headers>
|
||||
include/FLAC++/all.h
|
||||
</headers>
|
||||
|
||||
<libs>
|
||||
src/libFLAC++/.libs/libFLAC++.so.10.0.0
|
||||
</libs>
|
11
test/abi/abi-descriptor-libFLAC-1.4.0.xml
Normal file
11
test/abi/abi-descriptor-libFLAC-1.4.0.xml
Normal file
@ -0,0 +1,11 @@
|
||||
<version>
|
||||
1.4.0
|
||||
</version>
|
||||
|
||||
<headers>
|
||||
include/FLAC/all.h
|
||||
</headers>
|
||||
|
||||
<libs>
|
||||
src/libFLAC/.libs/libFLAC.so.12.0.0
|
||||
</libs>
|
BIN
test/abi/abi-libFLAC++-1.4.0.dump.xz
Normal file
BIN
test/abi/abi-libFLAC++-1.4.0.dump.xz
Normal file
Binary file not shown.
BIN
test/abi/abi-libFLAC-1.4.0.dump.xz
Normal file
BIN
test/abi/abi-libFLAC-1.4.0.dump.xz
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user