Subject: Re: libtool and sparc/1.4
To: Nick Hudson <nick@nthcliff.demon.co.uk>
From: None <mcmahill@mtl.mit.edu>
List: tech-pkg
Date: 08/24/2000 15:08:15
On Thu, 24 Aug 2000, Nick Hudson wrote:

> mcmahill@mtl.mit.edu wrote:
> > 
> > On Thu, 24 Aug 2000, Nick Hudson wrote:
> > 
> > > It would seem that libtool-1.3.5nb4 breaks linking of shared
> > > libraries(see PR/10846, PR/10190) on sparc 1.4. As I put in place the
> > > bit that broke the builds then I felt as though I should address the
> > > problem. The problem (I believe) stems from the fact that
> > > /usr/lib/c++rt0.o is compiled -fpic whereas libtool compiles everything
> > > -fPIC. This isn't a problem in current because sparc toolchain is now
> > > ELF and -fpic no longer exists in bsd.lib.mk
> > >
> > > I see the following possible solutions.
> > >
> > > i)    pull up the bsd.lib.mk change to the netbsd-1-4 branch for 1.4.3 and
> > >       require 1.4 users to update to 1.4.3 when it becomes available. This
> > >       should fix all the problems.
> > 
> > this has some problems we've run into.  However, the change to
> > basesrc/lib/csu/c++/Makefile (which is actually what makes
> > /usr/lib/c++rt0.o be -fPIC vs pic), _should_ (I think) be ok.
> 
> I see that you made this change to the head branch. Did you request a
> pull up for the 1.4 branch? Do you want me to send the request?

yes, but with the request that we test that sparc can still rebuild netbsd
and the bsd.lib.mk change broke that.  There has been discussion about the
other change for 1.4, but I don't know what was decided by the portmaster
whose better judgment I would defer to.

> > > ii)   change libtool to avoid the inclusion of /usr/lib/c++rt0.o for
> > >       sparc/a.out and mark the packages that require it as broken.
> > this is way too many.
> > 
> > > iii)  mark all USE_LIBTOOL packages as broken on sparc/a.out.
> > way too many.
> 
> I would agree its alot of packages, but I'd rather see things marked as
> broken if they are known to be.

right, but by replacing that 1 file, all but one of the broken ones become
non-broken and there are really a ton of broken ones.


-Dan