summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorPablo Galindo <Pablogsal@gmail.com>2021-05-04 01:15:11 (GMT)
committerGitHub <noreply@github.com>2021-05-04 01:15:11 (GMT)
commitb86ac4c352b783861ee49a8a7d41acf0c60bac30 (patch)
tree035b7939240b1bf729b18b88c1075cc15c153490 /.github
parentd1ff838d1091853ed6f56bc1573606dc0d74a691 (diff)
downloadcpython-b86ac4c352b783861ee49a8a7d41acf0c60bac30.zip
cpython-b86ac4c352b783861ee49a8a7d41acf0c60bac30.tar.gz
cpython-b86ac4c352b783861ee49a8a7d41acf0c60bac30.tar.bz2
Add CI step to check changes in the exported ABI (GH-25868)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml22
1 files changed, 22 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index adcadd5..b510074 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -53,6 +53,28 @@ jobs:
git diff --name-only origin/$GITHUB_BASE_REF.. | grep -qE '(ssl|hashlib|hmac|^.github)' && echo '::set-output name=run_ssl_tests::true' || true
fi
+ check_abi:
+ name: 'Check if the ABI has changed'
+ runs-on: ubuntu-20.04
+ needs: check_source
+ if: needs.check_source.outputs.run_tests == 'true'
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-python@v2
+ - name: Install Dependencies
+ run: |
+ sudo ./.github/workflows/posix-deps-apt.sh
+ sudo apt-get install -yq abigail-tools
+ - name: Build CPython
+ env:
+ CFLAGS: -g3 -O0
+ run: |
+ # Build Python with the libpython dynamic library
+ ./configure --enable-shared
+ make -j4
+ - name: Check for changes in the ABI
+ run: make check-abidump
+
check_generated_files:
name: 'Check if generated files are up to date'
runs-on: ubuntu-latest