On Dec 29, 2004, at 6:25 PM, Jack Jansen wrote:


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:-(

Yeah.. I'd rather have broken C++ support than broken linker support though.. so this patch is better than no patch.


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).

I'm +1 for replacing sysconfig.py. It's known to be exactly the one included with 2.3.0. The user gets what they deserve if they made their own changes to sysconfig.py here.


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.

-1.. you would also need to use a weird .pth hack to make sure it gets into sys.path before stdlib..


-bob

_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to