Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Nov 2017 00:11:51 +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: r325412 - in head: . targets/pseudo/bootstrap-tools
Message-ID:  <201711050011.vA50BpCS042756@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Sun Nov  5 00:11:51 2017
New Revision: 325412
URL: https://svnweb.freebsd.org/changeset/base/325412

Log:
  Fix nested MAKEOBJDIRPREFIX breaking various release/buildworld/toolchain targets.
  
  This problem was caused by r325329 and r325350.
  
  For the release(7) targets, some will run mm-mtree.sh which itself runs make
  with a MAKEOBJDIRPREFIX.  The execution of that script leaks OBJROOT,
  MAKEOBJDIR, and MAKELEVEL=1 in the environment.  This causes the mm-mtree makes
  to not do some basic setup of OBJROOT and only use this special
  MAKEOBJDIRPREFIX case which fails to empty out MAKEOBJDIRPREFIX for further
  nested makes, such as a tree walk.  If that tree walk sets OBJROOT/OBJTOP such
  as r325329 is doing, then the wrong OBJDIRs end up being used due to the
  unemptied MAKEOBJDIRPREFIX being preferred over the proper MAKEOBJDIR.
  
  Pointyhat to:	bdrewery
  Sponsored by:	Dell EMC Isilon

Modified:
  head/Makefile.inc1
  head/Makefile.libcompat
  head/targets/pseudo/bootstrap-tools/Makefile

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1	Sun Nov  5 00:11:47 2017	(r325411)
+++ head/Makefile.inc1	Sun Nov  5 00:11:51 2017	(r325412)
@@ -523,6 +523,7 @@ BMAKEENV=	INSTALL="sh ${.CURDIR}/tools/install.sh" \
 BSARGS= 	DESTDIR= \
 		OBJTOP='${WORLDTMP}/obj-tools' \
 		OBJROOT='$${OBJTOP}/' \
+		MAKEOBJDIRPREFIX= \
 		BOOTSTRAPPING=${OSRELDATE} \
 		BWPHASE=${.TARGET:C,^_,,} \
 		SSP_CFLAGS= \
@@ -565,6 +566,7 @@ KTMAKE=		TOOLS_PREFIX=${WORLDTMP} \
 		DESTDIR= \
 		OBJTOP='${WORLDTMP}/obj-kernel-tools' \
 		OBJROOT='$${OBJTOP}/' \
+		MAKEOBJDIRPREFIX= \
 		BOOTSTRAPPING=${OSRELDATE} \
 		SSP_CFLAGS= \
 		MK_HTML=no -DNO_LINT MK_MAN=no \

Modified: head/Makefile.libcompat
==============================================================================
--- head/Makefile.libcompat	Sun Nov  5 00:11:47 2017	(r325411)
+++ head/Makefile.libcompat	Sun Nov  5 00:11:51 2017	(r325412)
@@ -129,6 +129,7 @@ LIBCOMPATWMAKEFLAGS+= CC="${XCC} ${LIBCOMPATCFLAGS}" \
 LIBCOMPATWMAKE+=	${LIBCOMPATWMAKEENV} ${MAKE} ${LIBCOMPATWMAKEFLAGS} \
 			OBJTOP=${LIBCOMPAT_OBJTOP} \
 			OBJROOT='$${OBJTOP}/' \
+			MAKEOBJDIRPREFIX= \
 			MK_MAN=no MK_HTML=no
 LIBCOMPATIMAKE+=	${LIBCOMPATWMAKE:NINSTALL=*:NDESTDIR=*} \
 			MK_TOOLCHAIN=no ${IMAKE_INSTALL} \
@@ -188,6 +189,7 @@ build${libcompat}: .PHONY
 	    ${MAKE} SSP_CFLAGS= DESTDIR= \
 	    OBJTOP=${LIBCOMPAT_OBJTOP} \
 	    OBJROOT='$${OBJTOP}/' \
+	    MAKEOBJDIRPREFIX= \
 	    DIRPRFX=${_dir}/ -DNO_LINT -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \
 	    build-tools
 .endfor

Modified: head/targets/pseudo/bootstrap-tools/Makefile
==============================================================================
--- head/targets/pseudo/bootstrap-tools/Makefile	Sun Nov  5 00:11:47 2017	(r325411)
+++ head/targets/pseudo/bootstrap-tools/Makefile	Sun Nov  5 00:11:51 2017	(r325412)
@@ -36,6 +36,7 @@ OSRELDATE?= 0
 BSARGS= 	DESTDIR= \
 		OBJTOP='${WORLDTMP}/obj-tools' \
 		OBJROOT='$${OBJTOP}/' \
+		MAKEOBJDIRPREFIX= \
 		BOOTSTRAPPING=${OSRELDATE} \
 		BWPHASE=${.TARGET} \
 		SSP_CFLAGS= \



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