Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Sep 2015 04:01:06 +0000 (UTC)
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r287898 - head/share/mk
Message-ID:  <201509170401.t8H416ar066558@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Thu Sep 17 04:01:05 2015
New Revision: 287898
URL: https://svnweb.freebsd.org/changeset/base/287898

Log:
  META_MODE: Allow MAKEOBJDIRPREFIX to work more closely to its traditional behavior.
  
  The preferred way to modify the object directory root is to use OBJROOT.
  However, setting OBJROOT to ${MAKEOBJDIRPREFIX}/${SRCTOP}/ effectively behaves
  as expected.
  
  The problem with this before was that setting OBJROOT to contain SRCTOP
  resulted in a recursive replacement (/usr/obj/usr/obj/usr/src/). Anchoring to
  the start of the path for replacing SRCCTOP in CURDIR resolves this by
  avoiding replacing SRCTOP when CURDIR is within the OBJDIR.
  
  Sponsored by:	EMC / Isilon Storage Division

Modified:
  head/share/mk/local.meta.sys.mk

Modified: head/share/mk/local.meta.sys.mk
==============================================================================
--- head/share/mk/local.meta.sys.mk	Thu Sep 17 03:42:18 2015	(r287897)
+++ head/share/mk/local.meta.sys.mk	Thu Sep 17 04:01:05 2015	(r287898)
@@ -7,14 +7,13 @@
 # we need this until there is an alternative
 MK_INSTALL_AS_USER= yes
 
-_default_makeobjdir=$${.CURDIR:S,$${SRCTOP},$${OBJTOP},}
+_default_makeobjdir=$${.CURDIR:S,^$${SRCTOP},$${OBJTOP},}
 
 .if empty(OBJROOT) || ${.MAKE.LEVEL} == 0
 .if !make(showconfig)
-.if defined(MAKEOBJDIRPREFIX) && exists(${MAKEOBJDIRPREFIX})
-.warning MAKEOBJDIRPREFIX not supported; setting MAKEOBJDIR...
+.if defined(MAKEOBJDIRPREFIX)
 # put things approximately where they want
-OBJROOT:=${MAKEOBJDIRPREFIX}${SRCTOP:S,/src,,}/
+OBJROOT:=${MAKEOBJDIRPREFIX}${SRCTOP}/
 MAKEOBJDIRPREFIX=
 .export MAKEOBJDIRPREFIX
 .endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201509170401.t8H416ar066558>