On Tue, May 29, 2012 at 01:39:19AM -0500, James wrote: > Hi all. I've come across a possible Clang regression that recently > crept into stable/9. I'd like to check to see whether it's a true bug > or if I jacked something up. It appears all object files are created > with mode 0600 rather than honoring umask. This breaks installworld > for me. I use a centralized src/obj over NFS configuration and > installing to the target system fails with a permission denied error.
Hmmm... yeah, that could cause a bit of hassle for me, as well.
Checking a FreeBSD/i386 stable/9 /usr/obj as of r236226, I see 16544
files with permission 0600 and 710 files that have something else
(typically, 0644):
d134(9.0-S)[6] find . -type f -name \*.o \! -perm 0600 -ls | wc -l
710
d134(9.0-S)[7] find . -type f -name \*.o -perm 0600 -ls | wc -l
16544
d134(9.0-S)[8] find . -type f -name \*.o \! -perm 0600 -ls | head
2075139 12 -rwxr-xr-x 1 root wheel 6016 May
25 05:10 ./tmp/usr/lib/dtrace/drti.o
2072994 4 -rwxr-xr-x 1 root wheel 829 May
24 12:00 ./tmp/usr/lib/crti.o
2072995 4 -rwxr-xr-x 1 root wheel 785 May
24 12:00 ./tmp/usr/lib/crtn.o
2072996 4 -rwxr-xr-x 1 root wheel 2014 May
24 12:00 ./tmp/usr/lib/gcrt1.o
2072997 4 -rwxr-xr-x 1 root wheel 1848 May
24 12:00 ./tmp/usr/lib/crt1.o
2072998 4 -rwxr-xr-x 1 root wheel 2004 May
24 12:00 ./tmp/usr/lib/Scrt1.o
2072999 4 -rwxr-xr-x 1 root wheel 1628 May
24 12:00 ./tmp/usr/lib/crtbegin.o
2073000 4 -rwxr-xr-x 1 root wheel 1252 May
24 12:00 ./tmp/usr/lib/crtend.o
2072980 4 -rwxr-xr-x 1 root wheel 1968 May
24 12:00 ./tmp/usr/lib/crtbeginT.o
2072981 4 -rwxr-xr-x 1 root wheel 1864 May
24 12:00 ./tmp/usr/lib/crtbeginS.o
d134(9.0-S)[9] find . -type f -name \*.o -perm 0600 -ls | head
2472960 20 -rw------- 1 root wheel 9984 May
29 04:27 ./make.i386/usr/src/usr.bin/make/cond.o
2472961 8 -rw------- 1 root wheel 2456 May
29 04:27 ./make.i386/usr/src/usr.bin/make/buf.o
2472962 20 -rw------- 1 root wheel 9296 May
29 04:27 ./make.i386/usr/src/usr.bin/make/dir.o
2472963 24 -rw------- 1 root wheel 11924 May
29 04:27 ./make.i386/usr/src/usr.bin/make/arch.o
2472964 8 -rw------- 1 root wheel 2352 May
29 04:27 ./make.i386/usr/src/usr.bin/make/hash.o
2472966 12 -rw------- 1 root wheel 4188 May
29 04:27 ./make.i386/usr/src/usr.bin/make/for.o
2472965 4 -rw------- 1 root wheel 1588 May
29 04:27 ./make.i386/usr/src/usr.bin/make/hash_tables.o
2472967 60 -rw------- 1 root wheel 29844 May
29 04:27 ./make.i386/usr/src/usr.bin/make/job.o
2472968 40 -rw------- 1 root wheel 19964 May
29 04:27 ./make.i386/usr/src/usr.bin/make/main.o
2472970 12 -rw------- 1 root wheel 6096 May
29 04:27 ./make.i386/usr/src/usr.bin/make/make.o
d134(9.0-S)[10]
So I won't claim "always mode 0600," but it looks like enough to be
annoying. :-}
I'm pretty sure I didn't change anything relevent from how I build with
gcc (on a different slice).
Peace,
david
--
David H. Wolfskill [email protected]
Depriving a girl or boy of an opportunity for education is evil.
See http://www.catwhisker.org/~david/publickey.gpg for my public key.
pgpHB9AU3KYRT.pgp
Description: PGP signature
