Title: select module compile errors breaks OS X multi-architecture builds
Type: compile error Stage: resolved
Components: Library (Lib), macOS Versions: Python 3.2, Python 2.7
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: ronaldoussoren Nosy List: mbroughton, ned.deily, pitrou, ronaldoussoren
Priority: normal Keywords:

Created on 2009-12-01 09:03 by ned.deily, last changed 2009-12-01 15:57 by ronaldoussoren. This issue is now closed.

File name Uploaded Description Edit
issue-select-kevent-osx.txt ned.deily, 2009-12-01 09:03
Messages (4)
msg95851 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2009-12-01 09:03
Release blocker

The changes for Issue7211 to support 64-bit kevent ident fields
in 64-bit builds cause compile errors on those OS X multi-arch
builds which include both 32-bit and 64-bit variants.

Problem is reproducible by this simplified build config:

   configure --with-universal-archs=intel --enable-universalsdk=/

To support C data types which vary between 32-bit and 64-bit builds,
Include/pymacconfig.h does some magic conditional type definitions
overriding the standard values derived from autoconf configure
processing.  Previously, SIZEOF_UINTPTR_T was not referenced in
the Python source; now that selectmodule.c uses it, it needs
to be added to pymacconfig.h.  The attached patch does that.

Although the select changes were only added to trunk (r76108)
and py3k (r76111), it would be better to apply this patch to the
maintenance branches as well in the event something else gets
added or backported to them.
msg95859 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2009-12-01 15:04
I'm currently testing a patch that adds the required SIZEOF_ macros to 
pymacconfig.h, simular to how SIZEOF_LONG and SIZEOF_VOIDP are handled.

I expect to commit a fix later today to the 2.7 and 3.2 branches. The new 
SIZEOF_ macros are only needed for new functionality in selectmodule, and 
hence don't need to be backported to 2.6 or 3.1.
msg95862 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2009-12-01 15:31
Hugh: why did you remove the .c file? 

I'd prefer to keep the .c file in the python tracker as, just in case 
someone else runs into the same issue and starts debugging the issue.
msg95866 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2009-12-01 15:57
Fixed in r76623 (trunk) and r76624 (3.2).

(The commit message mentions another issue, that's a copy-paste error on 
my end)
Date User Action Args
2009-12-01 15:57:02ronaldoussorensetstatus: open -> closed
resolution: fixed
messages: + msg95866

stage: resolved
2009-12-01 15:31:37ronaldoussorensetmessages: + msg95862
2009-12-01 15:04:09ronaldoussorensetmessages: + msg95859
2009-12-01 14:52:41mbroughtonsetnosy: + mbroughton
2009-12-01 09:03:09ned.deilycreate