Author: ngie
Date: Mon Feb 23 05:28:17 2015
New Revision: 279197
URL: https://svnweb.freebsd.org/changeset/base/279197

Log:
  Parallelize building bootstrap-tools
  
  Differential Revision: https://reviews.freebsd.org/D1901
  MFC after: 2 weeks
  Reviewed by: ian
  No serious objections from: imp

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Mon Feb 23 01:24:10 2015        (r279196)
+++ head/Makefile.inc1  Mon Feb 23 05:28:17 2015        (r279197)
@@ -1222,6 +1222,8 @@ legacy:
 #
 # bootstrap-tools: Build tools needed for compatibility
 #
+_bt=           _bootstrap-tools        
+
 .if ${MK_GAMES} != "no"
 _strfile=      games/fortune/strfile
 .endif
@@ -1245,6 +1247,8 @@ _sed=             usr.bin/sed
 .if ${BOOTSTRAPPING} < 1000002
 _m4=           lib/libohash \
                usr.bin/m4
+
+${_bt}-usr.bin/m4: ${_bt}-lib/libohash
 .endif
 
 .if ${BOOTSTRAPPING} < 1000014
@@ -1254,6 +1258,8 @@ _crunch=  usr.sbin/crunch
 .if ${BOOTSTRAPPING} < 1000026
 _nmtree=       lib/libnetbsd \
                usr.sbin/nmtree
+
+${_bt}-usr.sbin/nmtree: ${_bt}-lib/libnetbsd
 .endif
 
 .if ${BOOTSTRAPPING} < 1000027
@@ -1271,6 +1277,8 @@ _awk=             usr.bin/awk
 .if ${BOOTSTRAPPING} < 1001506
 _yacc=         lib/liby \
                usr.bin/yacc
+
+${_bt}-usr.bin/yacc: ${_bt}-lib/liby
 .endif
 
 .if ${MK_BSNMP} != "no"
@@ -1285,6 +1293,9 @@ _clang_tblgen= \
        lib/clang/libllvmtablegen \
        usr.bin/clang/tblgen \
        usr.bin/clang/clang-tblgen
+
+${_bt}-usr.bin/clang/clang-tblgen: ${_bt}-lib/clang/libllvmtablegen 
${_bt}-lib/clang/libllvmsupport
+${_bt}-usr.bin/clang/tblgen: ${_bt}-lib/clang/libllvmtablegen 
${_bt}-lib/clang/libllvmsupport
 .endif
 
 # ELF Tool Chain libraries are needed for ELF tools and dtrace tools.
@@ -1314,12 +1325,16 @@ _kerberos5_bootstrap_tools= \
        kerberos5/tools/asn1_compile \
        kerberos5/tools/slc \
        usr.bin/compile_et
+
+${_bt}-kerberos5/tools/slc: ${_bt}-kerberos5/lib/libroken
+${_bt}-kerberos5/tools/asn1_compile: ${_bt}-kerberos5/lib/libroken
 .endif
 
+bootstrap-tools: .PHONY
+
 #      Please document (add comment) why something is in 'bootstrap-tools'.
 #      Try to bound the building of the bootstrap-tool to just the
 #      FreeBSD versions that need the tool built at this stage of the build.
-bootstrap-tools: .MAKE
 .for _tool in \
     ${_clang_tblgen} \
     ${_kerberos5_bootstrap_tools} \
@@ -1345,12 +1360,15 @@ bootstrap-tools: .MAKE
     ${_crunch} \
     ${_nmtree} \
     ${_vtfontcvt}
+${_bt}-${_tool}: .PHONY .MAKE
        ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
                cd ${.CURDIR}/${_tool} && \
                ${MAKE} DIRPRFX=${_tool}/ obj && \
                ${MAKE} DIRPRFX=${_tool}/ depend && \
                ${MAKE} DIRPRFX=${_tool}/ all && \
                ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy 
install
+
+bootstrap-tools: ${_bt}-${_tool}
 .endfor
 
 #
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to