Subject: Re: OS X pkgsrc fun
To: None <tech-pkg@netbsd.org>
From: Dan Winship <danw@NetBSD.org>
List: tech-pkg
Date: 09/15/2003 09:03:06
> >       * _USE_RPATH=no: There are about a zillion places that need to be
> >         checking _USE_RPATH that aren't. Fixing all of them would be a

> We should be able to work around this.  Both buildlink2 and buildlink3
> (hereafter "bl2" and "bl3") can strip -Wl,-R* or -R* from files before
> they're installed, and we just need to identify which files those are.
> By default, we do this on files matching *-config, *Conf.sh, and *.pc.

Yeah, I noticed some of this code later. So what happens is that "naive"
packages that blindly use "-Wl,-R" end up working, but packages that
actually look at RPATH_FLAG (eg, graphics/freetype2) break (because
RPATH_FLAG is "darwin_has_no_rpath" and that *doesn't* get stripped out
by buildlink. :-)

It sounds like making freetype use -R unconditionally should fix things
then, and if any problems pop up elsewhere, they should be fixed by
making buildlink know about them?

(BTW, it seems like if the whole process could be reversed--to have
buildlink magically ADD -R's where they're needed rather than removing
them where they're not--that we could get rid of a whole bunch of
patches...)

> >       * pthread.buildlink2.mk: "-lpthread" on Darwin is a no-op, and
> >         while there is a libpthread.dylib, there's no
> >         "libpthread.0.1.dylib" or whatever, so fake-la messes up when
> >         trying to buildlink it. (PR 20516).
> 
> I believe I've fixed this in bl3.

Cool. How would I test that?

-- Dan