[Pythonmac-SIG] The PantherPythonFix installer and C++ extensions

Jack Jansen Jack.Jansen at cwi.nl
Thu Dec 30 00:25:58 CET 2004


On 29-dec-04, at 11:40, Bob Ippolito wrote:
[Bob notes that my PantherPythonFix installer will break C++ 
compilation because distutils simply replaces the first component of 
LDSHARED with "c++"]
>> Any suggestions as to what to do to get c++ compilation fixed?
>
> I can think of two ways:
>
> 1. Patch distutils to actually do 
> os.environ['MACOSX_DEPLOYMENT_TARGET'] = '10.3' because 
> CCompiler.spawn doesn't take an environment dict.
> 2. Patch distutils to skip over environment variables (basically 
> change that "0" into something smarter).   This is probably less 
> desirable because who knows where this happens, and who knows what 
> third party compiler subclasses used this original stupid code as a 
> template.

Both of these mean that "the simple installer that just puts a new 
Makefile into lib/python2.3/config" has just gone out the window:-(

I think I have a better alternative to both of these suggestions 
(basically what I just checked in for 2.5a0: allow the Makefile to 
force a setting for MACOSX_DEPLOYMENT_TARGET, unless it was set 
already), but that still leaves the problem that there's more files to 
patch.

We could of course replace sysconfig.py and sysconfig.pyc in place, but 
I don't feel happy about that. (So: please argue that it isn't a 
problem).

Or we could install a newer, patched distutils into 
/Library/Python/2.3. But that has the problem that it'll obliterate any 
other newer distutils the end user may have installed. Also not a good 
idea.

Or maybe someone here has a silver bullet?
--
Jack Jansen, <Jack.Jansen at cwi.nl>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma 
Goldman



More information about the Pythonmac-SIG mailing list