Author: bdrewery
Date: Tue Dec 5 21:29:47 2017
New Revision: 326580
URL: https://svnweb.freebsd.org/changeset/base/326580
Log:
AUTO_OBJ: For all top-level targets enforce using an OBJDIR.
This will cause an error if the wanted OBJDIR is not writable. Previously it
would cause the files to generate to the source tree. This was too obscure
and
things like buildworld really expect a proper OBJDIR layout.
Sponsored by: Dell EMC
Modified:
head/Makefile.sys.inc
head/share/mk/src.sys.obj.mk
Modified: head/Makefile.sys.inc
==============================================================================
--- head/Makefile.sys.inc Tue Dec 5 21:21:23 2017 (r326579)
+++ head/Makefile.sys.inc Tue Dec 5 21:29:47 2017 (r326580)
@@ -38,6 +38,10 @@ MK_AUTO_OBJ= no
# just want to read any existing OBJDIR but we don't care if we can create
# or write to them.
.MAKEOVERRIDES+= MK_AUTO_OBJ
+.else
+# For top-level we always assume the MAKEOBJDIRPREFIX is writable rather than
+# falling back to .CURDIR.
+__objdir_writable= yes
.endif
.endif # empty(.MAKEOVERRIDES:MMK_AUTO_OBJ)
Modified: head/share/mk/src.sys.obj.mk
==============================================================================
--- head/share/mk/src.sys.obj.mk Tue Dec 5 21:21:23 2017
(r326579)
+++ head/share/mk/src.sys.obj.mk Tue Dec 5 21:29:47 2017
(r326580)
@@ -172,7 +172,7 @@ CheckAutoObj() { \
.if !empty(__objdir)
.if ${.CURDIR} == ${__objdir}
__objdir_writable?= yes
-.else
+.elif empty(__objdir_writable)
__objdir_writable!= \
${CheckAutoObj}; CheckAutoObj "${__objdir}" || echo no
.endif
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"