Author: delphij
Date: Tue Oct 29 17:46:26 2013
New Revision: 257350
URL: http://svnweb.freebsd.org/changeset/base/257350

Log:
  In r257079, SRCDIR is pointed to ${.CURDIR} when not set.  However,
  Makefile.inc1 is being called in sub-make's where make(1) would,
  by default, implicitly chdir(2) to ${.OBJDIR} before executing any
  targets.  This would make some targets, like delete-old, when trying
  to derive various variables introduced by change r256921 using
  ``make -f Makefile.inc1'' that also rely on SRCDIR to fail.
  
  This changeset adds an explicit cd ${.CURDIR} before these unwrapped
  make calls, making them in line with the other ones that are already
  being wrapped with the explicit chdir's.
  
  Tested by:    gjb
  MFC after:    5 days

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Tue Oct 29 17:38:13 2013        (r257349)
+++ head/Makefile.inc1  Tue Oct 29 17:46:26 2013        (r257350)
@@ -1686,6 +1686,7 @@ delete-old-files:
 # argument list will get too long. Using .for/.endfor make "loops" will make
 # the Makefile parser segfault.
        @exec 3<&0; \
+       cd ${.CURDIR}; \
        ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_FILES -V "OLD_FILES:Musr/share/*.gz:R" | xargs -n1 | \
        while read file; do \
@@ -1708,7 +1709,8 @@ delete-old-files:
 
 check-old-files:
        @echo ">>> Checking for old files"
-       @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
+       @cd ${.CURDIR}; \
+       ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_FILES -V "OLD_FILES:Musr/share/*.gz:R" | xargs -n1 | \
        while read file; do \
                if [ -f "${DESTDIR}/$${file}" -o -L "${DESTDIR}/$${file}" ]; 
then \
@@ -1729,6 +1731,7 @@ delete-old-libs:
        @echo ">>> Removing old libraries"
        @echo "${OLD_LIBS_MESSAGE}" | fmt
        @exec 3<&0; \
+       cd ${.CURDIR}; \
        ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_LIBS | xargs -n1 | \
        while read file; do \
@@ -1748,7 +1751,8 @@ delete-old-libs:
 
 check-old-libs:
        @echo ">>> Checking for old libraries"
-       @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
+       @cd ${.CURDIR}; \
+       ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_LIBS | xargs -n1 | \
        while read file; do \
                if [ -f "${DESTDIR}/$${file}" -o -L "${DESTDIR}/$${file}" ]; 
then \
@@ -1763,7 +1767,8 @@ check-old-libs:
 
 delete-old-dirs:
        @echo ">>> Removing old directories"
-       @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
+       @cd ${.CURDIR}; \
+       ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_DIRS | xargs -n1 | sort -r | \
        while read dir; do \
                if [ -d "${DESTDIR}/$${dir}" ]; then \
@@ -1776,7 +1781,8 @@ delete-old-dirs:
 
 check-old-dirs:
        @echo ">>> Checking for old directories"
-       @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
+       @cd ${.CURDIR}; \
+       ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \
            -V OLD_DIRS | xargs -n1 | \
        while read dir; do \
                if [ -d "${DESTDIR}/$${dir}" ]; then \
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to