Issue 13371: Some Carbon extensions don't build on OSX 10.7 (original) (raw)

Issue13371

Created on 2011-11-08 14:28 by ronaldoussoren, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
issue13371.txt ronaldoussoren,2011-11-08 14:59
Messages (4)
msg147304 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2011-11-08 14:28
A number of Carbon wrapper modules don't build on OSX 10.7: $ make ... Failed to build these modules: _Fm _Qd _Qdoffs This is with '--with-universal-archs=intel', which worked fine on OSX 10.6. A short part of the compiler output: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:26: error: expected ‘)’ before ‘*’ token /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c: In function ‘Fm_GetFontName’: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:60: error: ‘GetFontName’ undeclared (first use in this function) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:60: error: (Each undeclared identifier is reported only once /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:60: error: for each function it appears in.) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:65: warning: implicit declaration of function ‘GetFontName’ /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c: In function ‘Fm_GetFNum’: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:78: error: ‘GetFNum’ undeclared (first use in this function) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:83: warning: implicit declaration of function ‘GetFNum’ /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c: In function ‘Fm_RealFont’: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:97: error: ‘RealFont’ undeclared (first use in this function) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:103: warning: implicit declaration of function ‘RealFont’ /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c: In function ‘Fm_SetFScaleDisable’: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:115: error: ‘SetFScaleDisable’ undeclared (first use in this function) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:120: warning: implicit declaration of function ‘SetFScaleDisable’ /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c: In function ‘Fm_FontMetrics’: /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:129: error: ‘FMetricRec’ undeclared (first use in this function) /Users/ronald/Projects/python/rw/2.7/Mac/Modules/fm/_Fmmodule.c:129: error: expected ‘;’ before ‘theMetrics’ Given the modules and failure it seems that a number of (long) deprecated Carbon functions got removed from Apple's header files.
msg147306 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2011-11-08 14:59
_Fm fails because the wrapped functionality is no longer present in the Headers (last seen in the QD.framework headers in the 10.6 SDK) likewise for _Qdoffs and _Qd. The attached patch changed the preprocessor guards around these bindings from #ifndef __LP64__ To: #if !defined(__LP64__) && !defined(MAC_OS_X_VERSION_10_7) That is, disable the bindings for these deprecated APIs when building for 64-bit code or when building with the 10.7 SDK (or later). There is a small risk with this patch: I'm not 100% sure that Apple will refrain from adding a definition for MAC_OS_X_VERSION_10_7 in a later release of the 10.6 SDK.
msg148092 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2011-11-21 22:48
LGTM
msg166993 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2012-07-31 12:21
Patch is already applied (ages ago), forgot to close this issue.
History
Date User Action Args
2022-04-11 14:57:23 admin set github: 57580
2012-07-31 12:21:04 ronaldoussoren set status: open -> closedresolution: fixedmessages: + stage: patch review -> resolved
2011-11-21 22:48:07 ned.deily set messages: +
2011-11-08 14:59:38 ronaldoussoren set files: + issue13371.txtnosy: + ned.deilymessages: + keywords: + patchstage: needs patch -> patch review
2011-11-08 14:29:47 vstinner set components: + Build
2011-11-08 14:28:25 ronaldoussoren create