Bug 201434
| Summary: | distutils.sysconfig.{get_config_h_filename,parse_config_h} broken | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Axel Thimm <Axel.Thimm> |
| Component: | python | Assignee: | Mihai Ibanescu <mihai.ibanescu> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Brock Organ <borgan> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | katzj |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | 2.4.3-15 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2006-08-17 22:18:16 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | 139911 | ||
| Bug Blocks: | 150224, 201435, 203090, 208707 | ||
Turns out this is due to the fix for multilib -devel support in bug #139911 comment 2. This fix only considered C/C++ consumers of pyconfig.h. python's querying mechanism needs to be redirected, too, by patching get_config_h_filename. A simple untested specfile fix is in bug #139911 comment 4. Fix (based on your suggestion) included in python-2.4.3-15 - thanks! This fixes bug #201435, thanks! Wrt to organisation, I'll just go ahead and close #201435 w/o removing the dependency, I hope that's the proper procedure. Otherwise feel free to remove the dependency. Thanks, again! |
Description of problem: /usr/include/python2.4/pyconfig.h is now a wrapper for 32/64 bit sub-includes. This breaks the usual query mechanism for extracting python build flags. Version-Release number of selected component (if applicable): python-2.4.3-14.fc6 How reproducible: always Steps to Reproduce: 1.config_h = sysconfig.get_config_h_filename() 2.config_h_vars = sysconfig.parse_config_h(open(config_h)) 3. Actual results: {} Expected results: {'STRICT_SYSV_CURSES': "/* Don't use ncurses extensions */", 'HAVE_SELECT': 1, 'HAVE_ST_BLOCKS': 1, [...] Additional info: o Breaks builds of smart package on FC6 o One can argue that the bug is in the implementation of parse_config_h, which should be able to descend into further included files. OTOH it would then need to understand nested conditionals, too. o maybe the 32/64 bits switch should be performed already on get_config_h_filename level? E.g. get_config_h_filename should return pyconfig-32.h and pyconfig-64.h respectively? Thanks!