tech-pkg: new libtool handling of "-release" breaks cross packages (was Re: cross pkgs)

Subject: new libtool handling of "-release" breaks cross packages (was Re: cross pkgs)
To: None <tech-pkg@netbsd.org>
From: Chuck Cranor <chuck@xxx.research.att.com>
List: tech-pkg
Date: 03/07/2001 20:12:35
In article <20010307174946.D2107231@chips.research.att.com>,
Chuck Cranor <chuck@research.att.com> wrote:
>i just CVS'd my pkgsrc to -current in hopes of building cross compiler
>tools, but...
>xxxcdc> make
>===> Building for bfd-crunchide-1.0
>cc -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -o crunchide crunchide.o -L/usr/xbsd/lib -Wl,-R/usr/xbsd/lib -lbfd-2.9.1 -liberty
>/usr/bin/ld: cannot open -lbfd-2.9.1: No such file or directory
>collect2: ld returned 1 exit status
>*** Error code 1
>the old binutils package would install $CROSSBASE/lib as:
>xbsd[8]> ls $CROSSBASE/lib/libbfd*
>/usr/xbsd/lib/libbfd-2.9.1.so /usr/xbsd/lib/libbfd-2.9.1.so.0.0
>/usr/xbsd/lib/libbfd-2.9.1.so.0 /usr/xbsd/lib/libbfd.a
>but the binutils i just built on my new system installs them as:
>xxxcdc> ls $CROSSBASE/lib/libbfd*
>/usr/xbsd/lib/libbfd.a /usr/xbsd/lib/libbfd.so.0
>/usr/xbsd/lib/libbfd.la /usr/xbsd/lib/libbfd.so.0.0
>/usr/xbsd/lib/libbfd.so
ok, this is due to changes made to the libtool package which the
cross stuff uses. observe:
old libtool (pkglibtool-1.2p2):
 xbsd[34]> cat DOIT 
 #!/bin/sh -x
 
 #lt=libtool
 lt=pkglibtool-ELF-1.2p2
 
 $lt --mode=compile cc -O2 -c ok.c
 
 $lt --mode=link cc -O2 -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -o libok.la -rpath /usr/xbsd/lib -release 2.9.1 ok.lo
 
 xbsd[35]> ./DOIT 
 + lt=pkglibtool-ELF-1.2p2
 + pkglibtool-ELF-1.2p2 --mode=compile cc -O2 -c ok.c
 cc -O2 -c -fPIC -DPIC ok.c
 mv -f ok.o ok.lo
 cc -O2 -c ok.c >/dev/null 2>&1
 + pkglibtool-ELF-1.2p2 --mode=link cc -O2 -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -o libok.la -rpath /usr/xbsd/lib -release 2.9.1 ok.lo
 mkdir .libs
 cc -shared -Wl,-soname -Wl,libok-2.9.1.so.0 -o .libs/libok-2.9.1.so.0.0 ok.lo
 (cd .libs && ln -s libok-2.9.1.so.0.0 libok-2.9.1.so.0)
 (cd .libs && ln -s libok-2.9.1.so.0.0 libok-2.9.1.so)
 ar cru .libs/libok.a ok.o
 ranlib .libs/libok.a
 creating libok.la
 (cd .libs && ln -s ../libok.la libok.la)
 xbsd[36]> 
 
new libtool (libtool-1.4.20010219nb2):
 xxxcdc> ./DOIT 
 + lt=libtool
 + libtool --mode=compile cc -O2 -c ok.c
 mkdir .libs
 cc -O2 -c ok.c -fPIC -DPIC -o .libs/ok.o
 cc -O2 -c ok.c -o ok.o >/dev/null 2>&1
 + libtool --mode=link cc -O2 -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/li
 b -L/usr/pkg/lib -o libok.la -rpath /usr/xbsd/lib -release 2.9.1 ok.lo
 cc -shared .libs/ok.o -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -Wl,-R/usr/pkg/lib -W
 l,-soname -Wl,libok.so.0 -o .libs/libok.so.0.0
 (cd .libs && rm -f libok.so.0 && ln -s libok.so.0.0 libok.so.0)
 (cd .libs && rm -f libok.so && ln -s libok.so.0.0 libok.so)
 (cd .libs && rm -f libok.so && ln -s libok.so.0.0 libok.so)
 ar cru .libs/libok.a ok.o
 ranlib .libs/libok.a
 creating libok.la
 (cd .libs && rm -f libok.la && ln -s ../libok.la libok.la)
 xxxcdc> 
does new libtool ignore the "-release 2.9.1" flag? 
chuck

AltStyle によって変換されたページ (->オリジナル) /