Interesting survey on Snow Leopard package managers

Jack Howarth howarth at bromo.med.uc.edu
Mon Sep 14 11:19:36 PDT 2009


On Mon, Sep 14, 2009 at 09:25:38AM -0700, Toby Peterson wrote:
> 
> Our current approach (passing -arch) seems to be working fine - I
> think both of your suggestions are bit heavy-handed considering *most*
> ports work just fine with -arch flags.
> 
> - Toby

Toby,
   I would also suggest reading...

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41180#c28

Unfortunately, the discussion in that bug report may be
hard to follow. Basically Mike Stump was asking the FSF
gcc developers to adopt an approach that would be more
forgiving to naive users allowing gcc to be built against the
wrong tripets. The tail end of comment 28 is the FSF
developer response. It is basically that if the user doesn't
pass the correct triplets to configure that they desire
the breakage they get.
   Again this was EXACTLY the case with the current gcc44
Portfile on Snow Leopard. The Portfile makes no attempt to
correct the guessed triplets by passing them explicitly to
configure yet assumes it can force -m64 onto the compiler.
What happens is configure sets up to build a 32-bit compiler
for i386-apple-darwin10 and gcc proceeds to generate 64-bit
code behind its back. When the build hits the multilib section
the logic used in the multilib is totally broken.
   Granted gcc is an extreme case but it is VERY unwise to
assume that configure will never set anything that architecture
dependent when the wrong triplet are passed. For example, if
there is any hard coded assembly language routines in the code,
the wrong assembly code will be selected by configure. Not passing the
correct triplet to configure or correcting config.guess is
simply bad technique.
                Jack


More information about the macports-dev mailing list