svn commit: r325191 - head/share/mk
Bryan Drewery
bdrewery at FreeBSD.org
Tue Oct 31 00:26:43 UTC 2017
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
More information about the svn-src-all
mailing list