Re: shared lib issue in /usr/obj?

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Thu, 9 Dec 2010 15:15:02 +0200
On Thu, Dec 09, 2010 at 01:57:16PM +0100, Giorgos Keramidas wrote:
> On Thu, 09 Dec 2010 07:38:38 -0500, Etienne Robillard <erob_at_gthcfoundation.org> wrote:
> > Hi
> >
> > $ sudo rm -rf /usr/obj/*
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32/libc.so.7: Operation
> > not permitted
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32/libcrypt.so.5:
> > Operation not permitted
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32/libthr.so.3:
> > Operation not permitted
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32/librt.so.1:
> > Operation not permitted
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32: Directory not empty
> > rm: /usr/obj/usr/local/freebsd8/src/lib32/usr: Directory not empty
> > rm: /usr/obj/usr/local/freebsd8/src/lib32: Directory not empty
> > rm: /usr/obj/usr/local/freebsd8/src: Directory not empty
> > rm: /usr/obj/usr/local/freebsd8: Directory not empty
> > rm: /usr/obj/usr/local: Directory not empty
> > rm: /usr/obj/usr: Directory not empty
> > $ uname -a
> > FreeBSD marina 8.1-STABLE FreeBSD 8.1-STABLE #1: Sun Nov 21 00:48:28 EST
> > 2010     root_at_:/usbj/usr/local/freebsd8/src/sys/GENERIC.ndebug  amd64
> >
> > Is this a corrupted obj directory ? If so, why should theses libs have
> > the schg flag enabled?
> 
> > $ sudo ls -lao /usr/obj/usr/local/freebsd8/src/lib32/usr/lib32/
> > total 2520
> > drwxr-xr-x  2 root  wheel  -      12288 Dec  9 07:24 .
> > drwxr-xr-x  3 root  wheel  -        512 Dec  9 07:25 ..
> > -r--r--r--  1 root  wheel  schg 1128116 Nov 21 02:15 libc.so.7
> > -r--r--r--  1 root  wheel  schg   32060 Nov 21 02:18 libcrypt.so.5
> > -r--r--r--  1 root  wheel  schg   16444 Nov 21 02:27 librt.so.1
> > -r--r--r--  1 root  wheel  schg   76668 Nov 21 02:19 libthr.so.3
> 
> 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_at_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_at_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.

Received on Thu Dec 09 2010 - 12:15:09 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:10 UTC