diff options
author | Victor Stinner <vstinner@python.org> | 2023-08-23 03:47:41 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-23 03:47:41 (GMT) |
commit | 1aff195903ca664b5285f7ac9e999347484d9d3b (patch) | |
tree | 044dff35f4a76af9da5d7403ea827966dce6f5cf | |
parent | a15396146f8b4f7196e858eba577730f66ac3fb6 (diff) | |
download | cpython-1aff195903ca664b5285f7ac9e999347484d9d3b.zip cpython-1aff195903ca664b5285f7ac9e999347484d9d3b.tar.gz cpython-1aff195903ca664b5285f7ac9e999347484d9d3b.tar.bz2 |
[3.11] gh-105776: Fix test_cppext when CC contains -std=c11 option (#108343) (#108347)
gh-105776: Fix test_cppext when CC contains -std=c11 option (#108343)
Fix test_cppext when the C compiler command has the "-std=c11" option.
Remove "-std=" options from the compiler command.
(cherry picked from commit 9173b2bbe13aeccc075b571da05c653a2a91de1b)
-rw-r--r-- | Lib/test/test_cppext/setup.py | 13 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Tests/2023-08-23-04-08-18.gh-issue-105776.oE6wp_.rst | 2 |
2 files changed, 15 insertions, 0 deletions
diff --git a/Lib/test/test_cppext/setup.py b/Lib/test/test_cppext/setup.py index dac3a96..f741247 100644 --- a/Lib/test/test_cppext/setup.py +++ b/Lib/test/test_cppext/setup.py @@ -1,7 +1,9 @@ # gh-91321: Build a basic C++ test extension to check that the Python C API is # compatible with C++ and does not emit C++ compiler warnings. import os.path +import shlex import sys +import sysconfig from setuptools import setup, Extension @@ -36,6 +38,17 @@ def main(): cppflags = [*CPPFLAGS, f'-std={std}'] + # gh-105776: When "gcc -std=11" is used as the C++ compiler, -std=c11 + # option emits a C++ compiler warning. Remove "-std11" option from the + # CC command. + cmd = (sysconfig.get_config_var('CC') or '') + if cmd is not None: + cmd = shlex.split(cmd) + cmd = [arg for arg in cmd if not arg.startswith('-std=')] + cmd = shlex.join(cmd) + # CC env var overrides sysconfig CC variable in setuptools + os.environ['CC'] = cmd + cpp_ext = Extension( name, sources=[SOURCE], diff --git a/Misc/NEWS.d/next/Tests/2023-08-23-04-08-18.gh-issue-105776.oE6wp_.rst b/Misc/NEWS.d/next/Tests/2023-08-23-04-08-18.gh-issue-105776.oE6wp_.rst new file mode 100644 index 0000000..0e0a3aa --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2023-08-23-04-08-18.gh-issue-105776.oE6wp_.rst @@ -0,0 +1,2 @@ +Fix test_cppext when the C compiler command ``-std=c11`` option: remove +``-std=`` options from the compiler command. Patch by Victor Stinner. |