diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a4efb42f5aa..3c0a41478e2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -133,6 +133,8 @@ jobs: runs-on: macos-latest needs: check_source if: needs.check_source.outputs.run_tests == 'true' + env: + PYTHONSTRICTEXTENSIONBUILD: 1 steps: - uses: actions/checkout@v2 - name: Configure CPython @@ -151,6 +153,7 @@ jobs: if: needs.check_source.outputs.run_tests == 'true' env: OPENSSL_VER: 1.1.1k + PYTHONSTRICTEXTENSIONBUILD: 1 steps: - uses: actions/checkout@v2 - name: Install Dependencies diff --git a/.travis.yml b/.travis.yml index 02b2afa4816..171e4d05391 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,6 +18,7 @@ env: # Set rpath with env var instead of -Wl,-rpath linker flag # OpenSSL ignores LDFLAGS when linking bin/openssl - LD_RUN_PATH="${OPENSSL_DIR}/lib" + - PYTHONSTRICTEXTENSIONBUILD=1 branches: only: diff --git a/setup.py b/setup.py index 1ac68df888d..06fd9be194b 100644 --- a/setup.py +++ b/setup.py @@ -540,6 +540,9 @@ class PyBuildExt(build_ext): "APIs, https://github.com/libressl-portable/portable/issues/381") print() + if os.environ.get("PYTHONSTRICTEXTENSIONBUILD") and (self.failed or self.failed_on_import): + raise RuntimeError("Failed to build some stdlib modules") + def build_extension(self, ext): if ext.name == '_ctypes':