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= \
_______________________________________________
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