[Python-bugs-list] [ python-Bugs-467055 ] -flat_namespace not in Makefile.pre.in for Darwin/MacOS

noreply@sourceforge.net noreply@sourceforge.net
Tue, 02 Oct 2001 06:59:15 -0700


Bugs item #467055, was opened at 2001-10-01 19:55
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=467055&group_id=5470

Category: Macintosh
Group: Python 2.2
Status: Open
Resolution: None
Priority: 5
Submitted By: Mitchell L Model (mlm)
Assigned to: Jack Jansen (jackjansen)
Summary: -flat_namespace not in Makefile.pre.in for Darwin/MacOS

Initial Comment:
Python 2.2a4 fixed Python 2.1's inadequate LDSHARED setting for Darwin/OS X as far as building Python is concerned.  However, it does not go quite far enough and the problem still exists for building other software that uses a similar configuration process, in particular Zope 2.4(.1).  It turns out that the top-level Makefile and Makefile.pre both have -flat_namespace correctly set, but Makefile.pre.in does not.  Since Makefile.pre.in gets installed in /usr/local/lib/python2.2/config, and other software using this build process reference Makefile.pre.in from there, -flat_namespace isn't set for the other software.  Manually adding:

LDSHARED= $(CC) $(LDFLAGS) -flat_namespace -undefined suppress

fixed the problem, at least for building Zope 2.4.  I don't know how much of that is actually needed other than -flat_namespace.

Please fix this for the real release!  The improvements for building on Mac OS X are wonderful -- it would be a shame for them to fail for the lack of one line in one file!

(I'm using Mac OS 10.1, in case that matters, with the developer tools installed.)

----------------------------------------------------------------------

>Comment By: Guido van Rossum (gvanrossum)
Date: 2001-10-02 06:59

Message:
Logged In: YES 
user_id=6380

I'm not sure what you're suggesting we *do* here. We can't
add -flat_namespace to Makefile.pre.in, because it's a
platform-independent file. Also note that there's some name
confusion: the Makefile.pre.in that's installed in
.../config is not the same one that is used to build Python;
it's an old (and deprecated) way to build 3rd party
extensions, whose source is in Misc/Makefile.pre.in; the
current party line is to use distutils. Maybe Zope should
switch to using distutils too.

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=467055&group_id=5470