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:
Martijn van Beurden 2022-08-22 16:07:25 +02:00 committed by GitHub
parent c90b3ea3c0
commit cd031fb7a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 37 additions and 5 deletions

View File

@ -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

View 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>

View 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>

Binary file not shown.

Binary file not shown.