Author: bdrewery
Date: Tue Oct 31 00:26:42 2017
New Revision: 325191
URL: https://svnweb.freebsd.org/changeset/base/325191

Log:
  Move some objdir handling (OBJROOT/OBJTOP) out of DIRDEPS_BUILD-only files.
  
  Sponsored by: Dell EMC Isilon

Added:
  head/share/mk/src.sys.obj.mk   (contents, props changed)
Modified:
  head/share/mk/local.meta.sys.mk

Modified: head/share/mk/local.meta.sys.mk
==============================================================================
--- head/share/mk/local.meta.sys.mk     Tue Oct 31 00:07:41 2017        
(r325190)
+++ head/share/mk/local.meta.sys.mk     Tue Oct 31 00:26:42 2017        
(r325191)
@@ -7,36 +7,10 @@
 # we need this until there is an alternative
 MK_INSTALL_AS_USER= yes
 
-_default_makeobjdir=$${.CURDIR:S,^$${SRCTOP},$${OBJTOP},}
+# Default OBJROOT/MAKEOBJDIR handled in local.sys.obj.mk
+.include <src.sys.obj.mk>
 
-.if empty(OBJROOT) || ${.MAKE.LEVEL} == 0
-.if defined(MAKEOBJDIRPREFIX) && !empty(MAKEOBJDIRPREFIX)
-# put things approximately where they want
-OBJROOT:=${MAKEOBJDIRPREFIX}${SRCTOP}/
-MAKEOBJDIRPREFIX=
-.export MAKEOBJDIRPREFIX
-.endif
-.if empty(MAKEOBJDIR)
-# OBJTOP set below
-MAKEOBJDIR=${_default_makeobjdir}
-# export but do not track
-.export-env MAKEOBJDIR
-# Expand for our own use
-MAKEOBJDIR:= ${MAKEOBJDIR}
-.endif
-.if !empty(SB)
-SB_OBJROOT ?= ${SB}/obj/
-# this is what we use below
-OBJROOT ?= ${SB_OBJROOT}
-.endif
-OBJROOT ?= /usr/obj${SRCTOP}/
-.if ${OBJROOT:M*/} != ""
-OBJROOT:= ${OBJROOT:H:tA}/
-.else
-OBJROOT:= ${OBJROOT:H:tA}/${OBJROOT:T}
-.endif
-.export OBJROOT SRCTOP
-
+.if !defined(HOST_TARGET)
 # we need HOST_TARGET etc below.
 .include <host-target.mk>
 .export HOST_TARGET

Added: head/share/mk/src.sys.obj.mk
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/share/mk/src.sys.obj.mk        Tue Oct 31 00:26:42 2017        
(r325191)
@@ -0,0 +1,38 @@
+# $FreeBSD$
+
+_default_makeobjdir=   $${.CURDIR:S,^$${SRCTOP},$${OBJTOP},}
+
+.if empty(OBJROOT) || ${.MAKE.LEVEL} == 0
+.if defined(MAKEOBJDIRPREFIX) && !empty(MAKEOBJDIRPREFIX)
+# put things approximately where they want
+OBJROOT:=      ${MAKEOBJDIRPREFIX}${SRCTOP}/
+MAKEOBJDIRPREFIX=
+.export MAKEOBJDIRPREFIX
+.endif
+.if empty(MAKEOBJDIR)
+# OBJTOP set below
+MAKEOBJDIR=    ${_default_makeobjdir}
+# export but do not track
+.export-env MAKEOBJDIR
+# Expand for our own use
+MAKEOBJDIR:=   ${MAKEOBJDIR}
+.endif
+.if !empty(SB)
+SB_OBJROOT?=   ${SB}/obj/
+# this is what we use below
+OBJROOT?=      ${SB_OBJROOT}
+.endif
+OBJROOT?=      /usr/obj${SRCTOP}/
+.if ${OBJROOT:M*/} != ""
+OBJROOT:=      ${OBJROOT:H:tA}/
+.else
+OBJROOT:=      ${OBJROOT:H:tA}/${OBJROOT:T}
+.endif
+.export OBJROOT SRCTOP
+.endif
+
+.if defined(MAKEOBJDIR)
+.if ${MAKEOBJDIR:M/*} == ""
+.error Cannot use MAKEOBJDIR=${MAKEOBJDIR}${.newline}Unset MAKEOBJDIR to get 
default:  MAKEOBJDIR='${_default_makeobjdir}'
+.endif
+.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