Several people noticed that a few files from libstdc++-v3 in /usr/obj
end up being owned by root, namely:

c++config.h gthr.h gthr-single.h gthr-posix.h gthr-tpf.h gthr-default.h

The problem is that they are regenerated by root when beforeinstall does
'make includes' directly from /usr/src/includes.  A cheap fix is to call
make includes from the main Makefile, which was already fixed to
de-escalate the prereq step.

Fixing that directly in gnu/lib/libstdc++-v3/Makefile would also be
possible, but it seems to be quite a bit messier since one would have to
touch quite a few targets to do the proper de-escalation.

With that, /usr/obj contains no root-owned files after 'make build'.

Index: Makefile
RCS file: /var/cvs/src/Makefile,v
retrieving revision 1.129
diff -u -p -r1.129 Makefile
--- Makefile    6 Oct 2016 18:56:17 -0000       1.129
+++ Makefile    12 Oct 2016 20:14:58 -0000
@@ -57,7 +57,7 @@ includes:
        cd ${.CURDIR}/etc && exec ${MAKE} DESTDIR=${DESTDIR} distrib-dirs
        cd ${.CURDIR}/etc && exec ${MAKE} DESTDIR=${DESTDIR} install-mtree
-       cd ${.CURDIR}/include && exec ${MAKE} includes
+       exec ${MAKE} includes
 .ifndef NOMAN

Reply via email to