Author: sjg
Date: Sun Jun 30 15:00:07 2013
New Revision: 252419
URL: http://svnweb.freebsd.org/changeset/base/252419

Log:
  Use && rather than ; when success of previous job matters.

Modified:
  head/Makefile.inc1
  head/UPDATING

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Sun Jun 30 13:41:21 2013        (r252418)
+++ head/Makefile.inc1  Sun Jun 30 15:00:07 2013        (r252419)
@@ -1131,11 +1131,11 @@ legacy:
 .endif
 .for _tool in tools/build
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,includes,depend,all,install)"; \
-           cd ${.CURDIR}/${_tool}; \
-           ${MAKE} DIRPRFX=${_tool}/ obj; \
-           ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy 
includes; \
-           ${MAKE} DIRPRFX=${_tool}/ depend; \
-           ${MAKE} DIRPRFX=${_tool}/ all; \
+           cd ${.CURDIR}/${_tool} && \
+           ${MAKE} DIRPRFX=${_tool}/ obj && \
+           ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy 
includes && \
+           ${MAKE} DIRPRFX=${_tool}/ depend && \
+           ${MAKE} DIRPRFX=${_tool}/ all && \
            ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install
 .endfor
 
@@ -1264,10 +1264,10 @@ bootstrap-tools:
     ${_crunch} \
     ${_nmtree}
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
-               cd ${.CURDIR}/${_tool}; \
-               ${MAKE} DIRPRFX=${_tool}/ obj; \
-               ${MAKE} DIRPRFX=${_tool}/ depend; \
-               ${MAKE} DIRPRFX=${_tool}/ all; \
+               cd ${.CURDIR}/${_tool} && \
+               ${MAKE} DIRPRFX=${_tool}/ obj && \
+               ${MAKE} DIRPRFX=${_tool}/ depend && \
+               ${MAKE} DIRPRFX=${_tool}/ all && \
                ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy 
install
 .endfor
 
@@ -1305,16 +1305,16 @@ build-tools:
     usr.bin/mkesdb_static \
     usr.bin/mkcsmapper_static
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,build-tools)"; \
-               cd ${.CURDIR}/${_tool}; \
-               ${MAKE} DIRPRFX=${_tool}/ obj; \
+               cd ${.CURDIR}/${_tool} && \
+               ${MAKE} DIRPRFX=${_tool}/ obj && \
                ${MAKE} DIRPRFX=${_tool}/ build-tools
 .endfor
 .for _tool in \
     ${_gcc_tools}
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all)"; \
-               cd ${.CURDIR}/${_tool}; \
-               ${MAKE} DIRPRFX=${_tool}/ obj; \
-               ${MAKE} DIRPRFX=${_tool}/ depend; \
+               cd ${.CURDIR}/${_tool} && \
+               ${MAKE} DIRPRFX=${_tool}/ obj && \
+               ${MAKE} DIRPRFX=${_tool}/ depend && \
                ${MAKE} DIRPRFX=${_tool}/ all
 .endfor
 
@@ -1363,10 +1363,10 @@ cross-tools:
     ${_crunchide} \
     ${_kgzip}
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
-               cd ${.CURDIR}/${_tool}; \
-               ${MAKE} DIRPRFX=${_tool}/ obj; \
-               ${MAKE} DIRPRFX=${_tool}/ depend; \
-               ${MAKE} DIRPRFX=${_tool}/ all; \
+               cd ${.CURDIR}/${_tool} && \
+               ${MAKE} DIRPRFX=${_tool}/ obj && \
+               ${MAKE} DIRPRFX=${_tool}/ depend && \
+               ${MAKE} DIRPRFX=${_tool}/ all && \
                ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install
 .endfor
 
@@ -1545,10 +1545,10 @@ lib/libradius__L: lib/libmd__L
 ${_lib}__PL: .PHONY
 .if exists(${.CURDIR}/${_lib})
        ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \
-               cd ${.CURDIR}/${_lib}; \
-               ${MAKE} DIRPRFX=${_lib}/ obj; \
-               ${MAKE} DIRPRFX=${_lib}/ depend; \
-               ${MAKE} -DNO_PROFILE -DNO_PIC DIRPRFX=${_lib}/ all; \
+               cd ${.CURDIR}/${_lib} && \
+               ${MAKE} DIRPRFX=${_lib}/ obj && \
+               ${MAKE} DIRPRFX=${_lib}/ depend && \
+               ${MAKE} -DNO_PROFILE -DNO_PIC DIRPRFX=${_lib}/ all && \
                ${MAKE} -DNO_PROFILE -DNO_PIC DIRPRFX=${_lib}/ install
 .endif
 .endfor
@@ -1557,10 +1557,10 @@ ${_lib}__PL: .PHONY
 ${_lib}__L: .PHONY
 .if exists(${.CURDIR}/${_lib})
        ${_+_}@${ECHODIR} "===> ${_lib} (obj,depend,all,install)"; \
-               cd ${.CURDIR}/${_lib}; \
-               ${MAKE} DIRPRFX=${_lib}/ obj; \
-               ${MAKE} DIRPRFX=${_lib}/ depend; \
-               ${MAKE} DIRPRFX=${_lib}/ all; \
+               cd ${.CURDIR}/${_lib} && \
+               ${MAKE} DIRPRFX=${_lib}/ obj && \
+               ${MAKE} DIRPRFX=${_lib}/ depend && \
+               ${MAKE} DIRPRFX=${_lib}/ all && \
                ${MAKE} DIRPRFX=${_lib}/ install
 .endif
 .endfor
@@ -1570,10 +1570,10 @@ ${_lib}__L: .PHONY
 # modules.
 lib/libpam__L: .PHONY
        ${_+_}@${ECHODIR} "===> lib/libpam (obj,depend,all,install)"; \
-               cd ${.CURDIR}/lib/libpam; \
-               ${MAKE} DIRPRFX=lib/libpam/ obj; \
-               ${MAKE} DIRPRFX=lib/libpam/ depend; \
-               ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \
+               cd ${.CURDIR}/lib/libpam && \
+               ${MAKE} DIRPRFX=lib/libpam/ obj && \
+               ${MAKE} DIRPRFX=lib/libpam/ depend && \
+               ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all && \
                ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install
 
 _prereq_libs: ${_prereq_libs:S/$/__PL/}
@@ -1584,7 +1584,7 @@ _generic_libs: ${_generic_libs:S/$/__L/}
 .for __target in all clean cleandepend cleandir depend includes obj
 .for entry in ${SUBDIR}
 ${entry}.${__target}__D: .PHONY
-       ${_+_}@if test -d ${.CURDIR}/${entry}.${MACHINE_ARCH}; then \
+       ${_+_}@set -e; if test -d ${.CURDIR}/${entry}.${MACHINE_ARCH}; then \
                ${ECHODIR} "===> ${DIRPRFX}${entry}.${MACHINE_ARCH} 
(${__target})"; \
                edir=${entry}.${MACHINE_ARCH}; \
                cd ${.CURDIR}/$${edir}; \
@@ -1822,10 +1822,10 @@ _xb-bootstrap-tools:
 .for _tool in \
     ${_clang_tblgen}
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
-       cd ${.CURDIR}/${_tool}; \
-       ${CDMAKE} DIRPRFX=${_tool}/ obj; \
-       ${CDMAKE} DIRPRFX=${_tool}/ depend; \
-       ${CDMAKE} DIRPRFX=${_tool}/ all; \
+       cd ${.CURDIR}/${_tool} && \
+       ${CDMAKE} DIRPRFX=${_tool}/ obj && \
+       ${CDMAKE} DIRPRFX=${_tool}/ depend && \
+       ${CDMAKE} DIRPRFX=${_tool}/ all && \
        ${CDMAKE} DIRPRFX=${_tool}/ DESTDIR=${CDTMP} install
 .endfor
 
@@ -1841,9 +1841,9 @@ _xb-cross-tools:
     ${_clang_libs} \
     ${_clang}
        ${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,depend,all)"; \
-       cd ${.CURDIR}/${_tool}; \
-       ${CDMAKE} DIRPRFX=${_tool}/ obj; \
-       ${CDMAKE} DIRPRFX=${_tool}/ depend; \
+       cd ${.CURDIR}/${_tool} && \
+       ${CDMAKE} DIRPRFX=${_tool}/ obj && \
+       ${CDMAKE} DIRPRFX=${_tool}/ depend && \
        ${CDMAKE} DIRPRFX=${_tool}/ all
 .endfor
 

Modified: head/UPDATING
==============================================================================
--- head/UPDATING       Sun Jun 30 13:41:21 2013        (r252418)
+++ head/UPDATING       Sun Jun 30 15:00:07 2013        (r252419)
@@ -31,6 +31,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10
        disable the most expensive debugging functionality run
        "ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20130629:
+       Fix targets that run multiple make's to use && rather than ;
+       so that subsequent steps depend on success of previous.
+
+       NOTE: if building 'universe' with -j* on stable/8 or stable/9
+       it would be better to start the build using bmake, to avoid
+       overloading the machine.
+
 20130618:
        Fix a bug that allowed a tracing process (e.g. gdb) to write
        to a memory-mapped file in the traced process's address space
_______________________________________________
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