diff options
author | Ronald Oussoren <ronaldoussoren@mac.com> | 2008-06-05 12:58:24 (GMT) |
---|---|---|
committer | Ronald Oussoren <ronaldoussoren@mac.com> | 2008-06-05 12:58:24 (GMT) |
commit | 5640ce2f1edc0148ee14fd3daeb7ac700700bb71 (patch) | |
tree | 9bc8b41710d3a86ccbb579a0209928d787386b69 /Mac/Modules/ibcarbon/_IBCarbon.c | |
parent | 80af6da7489c3b28e0a46c73849da34273972e3b (diff) | |
download | cpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.zip cpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.tar.gz cpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.tar.bz2 |
MacOS X: Enable 4-way universal builds
This patch adds a new configure argument on OSX:
--with-universal-archs=[32-bit|64-bit|all]
When used with the --enable-universalsdk option this controls which
CPU architectures are includes in the framework. The default is 32-bit,
meaning i386 and ppc. The most useful alternative is 'all', which includes
all 4 CPU architectures supported by MacOS X (i386, ppc, x86_64 and ppc64).
This includes limited support for the Carbon bindings in 64-bit mode as well,
limited because (a) I haven't done extensive testing and (b) a large portion
of the Carbon API's aren't available in 64-bit mode anyway.
I've also duplicated a feature of Apple's build of python: setting the
environment variable 'ARCHFLAGS' controls the '-arch' flags used for building
extensions using distutils.
Diffstat (limited to 'Mac/Modules/ibcarbon/_IBCarbon.c')
-rw-r--r-- | Mac/Modules/ibcarbon/_IBCarbon.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Mac/Modules/ibcarbon/_IBCarbon.c b/Mac/Modules/ibcarbon/_IBCarbon.c index 6baad7c..c7c819c 100644 --- a/Mac/Modules/ibcarbon/_IBCarbon.c +++ b/Mac/Modules/ibcarbon/_IBCarbon.c @@ -4,6 +4,7 @@ #include "Python.h" +#ifndef __LP64__ #include <Carbon/Carbon.h> #include "pymactoolbox.h" @@ -224,10 +225,13 @@ static PyObject *IBCarbon_CreateNibReference(PyObject *_self, PyObject *_args) IBNibRefObj_New, outNibRef); return _res; } +#endif /* __LP64__ */ static PyMethodDef IBCarbon_methods[] = { +#ifndef __LP64__ {"CreateNibReference", (PyCFunction)IBCarbon_CreateNibReference, 1, PyDoc_STR("(CFStringRef inNibName) -> (IBNibRef outNibRef)")}, +#endif /* __LP64__ */ {NULL, NULL, 0} }; @@ -237,13 +241,16 @@ static PyMethodDef IBCarbon_methods[] = { void init_IBCarbon(void) { PyObject *m; +#ifndef __LP64__ PyObject *d; +#endif /* __LP64__ */ m = Py_InitModule("_IBCarbon", IBCarbon_methods); +#ifndef __LP64__ d = PyModule_GetDict(m); IBCarbon_Error = PyMac_GetOSErrException(); if (IBCarbon_Error == NULL || @@ -256,6 +263,7 @@ void init_IBCarbon(void) /* Backward-compatible name */ Py_INCREF(&IBNibRef_Type); PyModule_AddObject(m, "IBNibRefType", (PyObject *)&IBNibRef_Type); +#endif /* __LP64__ */ } /* ====================== End module _IBCarbon ====================== */ |