Date: Thu, 9 Dec 2010 17:36:46 +0200 From: Kostik Belousov <kostikbel@gmail.com> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-current@freebsd.org, Etienne Robillard <erob@gthcfoundation.org>, Giorgos Keramidas <keramida@freebsd.org> Subject: Re: shared lib issue in /usr/obj? Message-ID: <20101209153646.GN33073@deviant.kiev.zoral.com.ua> In-Reply-To: <201012091001.32727.jhb@freebsd.org> References: <4D00CDCE.8040509@gthcfoundation.org> <20101209131502.GM33073@deviant.kiev.zoral.com.ua> <xeiahbenhx4p.fsf@kobe.laptop> <201012091001.32727.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--XLsjFikA86nwwlhe
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Thu, Dec 09, 2010 at 10:01:32AM -0500, John Baldwin wrote:
> 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=
>=20
> 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 instal=
l"
> > >> with PRECIOUSLIB defined, bsd.lib.mk adds this to SHINSTALLFLAGS:
> > >>
> > >> .if defined(PRECIOUSLIB)
> > >> .if !defined(NO_FSCHG)
> > >> SHLINSTALLFLAGS+=3D -fschg
> > >> .endif
> > >> SHLINSTALLFLAGS+=3D -S
> > >> .endif
> > >>
> > >> The Makefiles that set PRECIOUSLIB today are:
> > >>
> > >> keramida@bokos:/usr/src$ grep -r 'PRECIOUSLIB.*=3D' *
> > >> lib/libc/Makefile:PRECIOUSLIB=3D
> > >> lib/libcrypt/Makefile:PRECIOUSLIB=3D
> > >> lib/libkse/Makefile:PRECIOUSLIB=3D
> > >> lib/librt/Makefile:PRECIOUSLIB=3D
> > >> lib/libthr/Makefile:PRECIOUSLIB=3D
> > >> 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.
> >=20
> > Yes, that's a good idea.
> >=20
> > I don't have root access to an amd64 system to test this now, but I
> > think all we need to change is:
> >=20
> > %%%
> > $ 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+=3D MAKEOBJDIRPREFIX=3D${OBJTR
> > CXX=3D"${CXX} ${LIB32FLAGS}" \
> > OBJC=3D"${OBJC} ${LIB32FLAGS}" \
> > LIBDIR=3D/usr/lib32 \
> > - SHLIBDIR=3D/usr/lib32
> > + SHLIBDIR=3D/usr/lib32 \
> > + NO_FSCHG=3D''
> >=20
> > LIB32WMAKE=3D ${LIB32WMAKEENV} ${MAKE} -DNO_CPU_CFLAGS -DCOMPAT_32B=
IT \
> > -DWITHOUT_BIND -DWITHOUT_MAN -DWITHOUT_INFO \
> > $
> > %%%
> >=20
> > This should strip the -fschg option from lib32's installation commands.
>=20
> Does that affect the installed versions of the libraries in
> /usr/lib32? Those should probably have schg set.
Yes, it does affect lib32. I did full buildworld+installworld of the
patched tree on amd64, and the newly installed /usr/lib32/libc.so.7
has no schg flag.
--XLsjFikA86nwwlhe
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (FreeBSD)
iEYEARECAAYFAk0A940ACgkQC3+MBN1Mb4h0LgCfUM4Wm5TOzev9lEArC2cgPJmc
RiMAnRvYsr9hkPLASDAq7k4lfFoZTUge
=bhTq
-----END PGP SIGNATURE-----
--XLsjFikA86nwwlhe--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20101209153646.GN33073>
