name: Autotools distcheck and ABI check on: push: branches: - main - master pull_request: jobs: distcheck: 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 abi-compliance-checker - name: Build with Autotools run: | ./autogen.sh ./configure - 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@v3 if: failure() with: name: flac-${{ github.sha }}-${{ github.run_id }}-logs path: | ./flac-**/**/*.log ./compat_reports