Bug 2229725 - Python Extension Flags Reduction
Summary: Python Extension Flags Reduction
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Changes Tracking
Version: 39
Hardware: Unspecified
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Aoife Moloney
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: F39Changes
TreeView+ depends on / blocked
 
Reported: 2023-08-07 13:10 UTC by Charalampos Stratakis
Modified: 2023-11-14 18:57 UTC (History)
1 user (show)

Fixed In Version: redhat-rpm-config-262-1.fc39 python3.6-3.6.15-20.fc39 python3.7-3.7.17-3.fc39 python3.8-3.8.17-3.fc39 python3.9-3.9.17-3.fc39 python3.10-3.10.12-3.fc39 python3.11-3.11.4-4.fc39 python3.12-3.12.0~b4-3.fc39
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-11-14 18:57:27 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Charalampos Stratakis 2023-08-07 13:10:09 UTC
This is a tracking bug for Change: Python Extension Flags Reduction
For more details, see: https://fedoraproject.org/wiki/Changes/Python_Extension_Flags_Reduction

Continuing the work started with https://fedoraproject.org/wiki/Changes/Python_Extension_Flags, this change is about further reducing the build and linker flags (CFLAGS and LDFLAGS) saved internally in the Python interpreter for use by distutils and other build systems. Compiling non-RPM Python extension modules will carry only the compiler flags required for binary compatibility with the interpreter they were built against and not Fedora specific ones.

Practically that means the only Fedora derived flags will be -fexceptions and -fcf-protection and Python will apply its own upstream hardcoded ones, making the final flag set for a non-RPM compiled Python extension as follows:

    -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -fexceptions -fcf-protection

Python C extensions built as rpm's will not be affected.

The current main Python interpreter on Fedora 39 will be modified (Python 3.12) and Python 3.6-3.11 will follow.

This change will affect every package that provides support for extension builders via utilizing the %{extension...flags} macros which at the time being is only Python. 

If you encounter a bug related to this Change, please do not comment here. Instead create a new bug and set it to block this bug.

Reproducible: Always

Comment 1 Aoife Moloney 2023-11-14 18:57:27 UTC
F39 was released on November 7th, so I am closing this tracker. If this Change was not completed, please notify me ASAP.


Note You need to log in before you can comment on or make changes to this bug.