Skip to content

Check and report PEP 11 support tier in configure #93491

Description

@tiran

Feature or enhancement

PEP 11 now defines support tiers based on CPU arch, platform, libc, and compiler. I propose to check the support level in configure and report it to the user. It is trivial to check the platform with a case block. The compiler name can be detect by builtin macro names like __clang__.

A message at build time makes support tier more obvious to the user. It might even nudge some vendors to contribute fixes and build bots.

Example:

checking for PEP 11 support tier... x86_64-pc-linux-gnu/gcc has tier 1 (supported)
checking for PEP 11 support tier... wasm32-unknown-emscripten/clang is not supported
...
configure: creating Modules/Setup.local
configure: creating Makefile
configure:

If you want a release build with all stable optimizations active (PGO, etc),
please run ./configure --enable-optimizations

configure:

Platform "wasm32-unknown-emscripten" with compiler "clang" is not supported by
CPython core team, see https://peps.python.org/pep-0011/ for more information.

Activity

  1. added
    type-featureA feature request or enhancement
    buildThe build process and cross-build
    3.11only security fixes
    3.12only security fixes
    on Jun 4, 2022
  2. added a commit that references this issue on Jun 10, 2022
  3. added a commit that references this issue on Jun 10, 2022
  4. added a commit that references this issue on Jun 10, 2022
  5. added 2 commits that reference this issue on Jun 30, 2022
  6. added 2 commits that reference this issue on Jun 30, 2022
  7. added a commit that references this issue on Jun 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

3.11only security fixes3.12only security fixesbuildThe build process and cross-buildtype-featureA feature request or enhancement

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions