Parallelize building bootstrap-tools

Differential Revision: https://reviews.freebsd.org/D1901
MFC after: 2 weeks
Reviewed by: ian
No serious objections from: imp
This commit is contained in:
Enji Cooper 2015-02-23 05:28:17 +00:00
parent 35f612b88a
commit aebc0e3579

View File

@ -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
#