From 74e10c6f1adab70b5d7b43d238c113109f7ee80e Mon Sep 17 00:00:00 2001 From: ngie Date: Sun, 22 Mar 2015 08:42:44 +0000 Subject: MFC r279197,r279198: r279197: Parallelize building bootstrap-tools Differential Revision: https://reviews.freebsd.org/D1901 Reviewed by: ian No serious objections from: imp r279198: Fill in missing dependencies for dtrace related tools so the bootstrap-tools compiles properly on older hosts Pointyhat to: me --- Makefile.inc1 | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 31feee5..c9a5871 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1218,6 +1218,8 @@ legacy: # # bootstrap-tools: Build tools needed for compatibility # +_bt= _bootstrap-tools + .if ${MK_GAMES} != "no" _strfile= games/fortune/strfile .endif @@ -1248,11 +1250,15 @@ _sed= usr.bin/sed .if ${BOOTSTRAPPING} < 1000002 _m4= usr.bin/m4 + +${_bt}-usr.bin/m4: ${_bt}-lib/libohash .endif .if ${BOOTSTRAPPING} < 1000013 _yacc= lib/liby \ usr.bin/yacc + +${_bt}-usr.bin/yacc: ${_bt}-lib/liby .endif .if ${BOOTSTRAPPING} < 1000014 @@ -1262,6 +1268,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 @@ -1286,6 +1294,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 # dtrace tools are required for older bootstrap env and cross-build @@ -1295,6 +1306,9 @@ _clang_tblgen= \ || (${MACHINE} != ${TARGET} || ${MACHINE_ARCH} != ${TARGET_ARCH})) _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \ lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge + +${_bt}-cddl/usr.bin/ctfconvert: ${_bt}-lib/libelf ${_bt}-lib/libdwarf ${_bt}-cddl/lib/libctf +${_bt}-cddl/usr.bin/ctfmerge: ${_bt}-lib/libelf ${_bt}-lib/libdwarf ${_bt}-cddl/lib/libctf .endif # Default to building the GPL DTC, but build the BSDL one if users explicitly @@ -1312,6 +1326,9 @@ _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 .if ${_BOOTSTRAP_MAKEINFO} != "no" @@ -1319,10 +1336,11 @@ _texinfo= gnu/usr.bin/texinfo/libtxi \ gnu/usr.bin/texinfo/makeinfo \ gnu/usr.bin/texinfo/install-info .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} \ @@ -1350,12 +1368,15 @@ bootstrap-tools: .MAKE ${_nmtree} \ ${_texinfo} \ ${_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 # -- cgit v1.1