Date: Thu, 9 Dec 2010 10:01:32 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-current@freebsd.org Cc: Kostik Belousov <kostikbel@gmail.com>, Etienne Robillard <erob@gthcfoundation.org>, Giorgos Keramidas <keramida@freebsd.org> Subject: Re: shared lib issue in /usr/obj? Message-ID: <201012091001.32727.jhb@freebsd.org> In-Reply-To: <xeiahbenhx4p.fsf@kobe.laptop> References: <4D00CDCE.8040509@gthcfoundation.org> <20101209131502.GM33073@deviant.kiev.zoral.com.ua> <xeiahbenhx4p.fsf@kobe.laptop>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday, December 09, 2010 8:52:06 am Giorgos Keramidas wrote: > On Thu, 9 Dec 2010 15:15:02 +0200, Kostik Belousov <kostikbel@gmail.com> wrote: > > On Thu, Dec 09, 2010 at 01:57:16PM +0100, Giorgos Keramidas wrote: > >> They are installed with "make install" and when you run "make install" > >> with PRECIOUSLIB defined, bsd.lib.mk adds this to SHINSTALLFLAGS: > >> > >> .if defined(PRECIOUSLIB) > >> .if !defined(NO_FSCHG) > >> SHLINSTALLFLAGS+= -fschg > >> .endif > >> SHLINSTALLFLAGS+= -S > >> .endif > >> > >> The Makefiles that set PRECIOUSLIB today are: > >> > >> keramida@bokos:/usr/src$ grep -r 'PRECIOUSLIB.*=' * > >> lib/libc/Makefile:PRECIOUSLIB= > >> lib/libcrypt/Makefile:PRECIOUSLIB= > >> lib/libkse/Makefile:PRECIOUSLIB= > >> lib/librt/Makefile:PRECIOUSLIB= > >> lib/libthr/Makefile:PRECIOUSLIB= > >> keramida@bokos:/usr/src$ > > > > Would be nice if lib32 installation into the obj/ area somehow > > eliminated the setting of schg flag. There is no reason to have schg > > set on files in obj. > > Yes, that's a good idea. > > I don't have root access to an amd64 system to test this now, but I > think all we need to change is: > > %%% > $ hg diff . > diff -r e52d3f3de04d Makefile.inc1 > --- a/Makefile.inc1 Thu Dec 09 12:35:12 2010 +0100 > +++ b/Makefile.inc1 Thu Dec 09 14:50:06 2010 +0100 > @@ -318,7 +318,8 @@ LIB32WMAKEENV+= MAKEOBJDIRPREFIX=${OBJTR > CXX="${CXX} ${LIB32FLAGS}" \ > OBJC="${OBJC} ${LIB32FLAGS}" \ > LIBDIR=/usr/lib32 \ > - SHLIBDIR=/usr/lib32 > + SHLIBDIR=/usr/lib32 \ > + NO_FSCHG='' > > LIB32WMAKE= ${LIB32WMAKEENV} ${MAKE} -DNO_CPU_CFLAGS -DCOMPAT_32BIT \ > -DWITHOUT_BIND -DWITHOUT_MAN -DWITHOUT_INFO \ > $ > %%% > > This should strip the -fschg option from lib32's installation commands. Does that affect the installed versions of the libraries in /usr/lib32? Those should probably have schg set. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201012091001.32727.jhb>