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
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to