From 070e2898a0d5f648b496f43ba5c351da5da0ce0d Mon Sep 17 00:00:00 2001 From: imp Date: Sun, 6 Apr 2003 03:50:28 +0000 Subject: We can't use ${WORLDTMP}/usr/{include,lib} for the compat layer. This is because we populate these directories later, and a subsequent -DNOCLEAN build may fail. So, we put them in ${WORLDTMP}/build/usr/{include,lib} instead and adjust Makefile.boot. Again, this works on -stable and -current, but might break older versions. Submitted by: ru@ --- Makefile.inc1 | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'Makefile.inc1') diff --git a/Makefile.inc1 b/Makefile.inc1 index b4b3f09..8e04451 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -159,6 +159,9 @@ INSTALLTMP!= /usr/bin/mktemp -d -u -t install # # Building a world goes through the following stages # +# 1. libbuild stage [BMAKE] +# This stage is responsible for creating compatibility shims that are +# needed by the bootstrap-tool, build-tool and cross-tool stages. # 1. bootstrap-tool stage [BMAKE] # This stage is responsible for creating programs that # are needed for backward compatibility reasons. They @@ -276,6 +279,15 @@ _worldtmp: mkdir -p ${WORLDTMP}/usr/include/${_dir} .endfor ln -sf ${.CURDIR}/sys ${WORLDTMP} +.for _dir in lib include include/sys + mkdir -p ${WORLDTMP}/build/usr/${_dir} +.endfor +_libbuild: + @echo + @echo "--------------------------------------------------------------" + @echo ">>> stage 1: libbuild" + @echo "--------------------------------------------------------------" + cd ${.CURDIR}; ${BMAKE} libbuild _bootstrap-tools: @echo @echo "--------------------------------------------------------------" @@ -336,7 +348,7 @@ everything: WMAKE_TGTS= .if !defined(SUBDIR_OVERRIDE) -WMAKE_TGTS+= _worldtmp _bootstrap-tools +WMAKE_TGTS+= _worldtmp _libbuild _bootstrap-tools .endif WMAKE_TGTS+= _cleanobj _obj _build-tools .if !defined(SUBDIR_OVERRIDE) @@ -610,8 +622,18 @@ installmost: _strfile= games/fortune/strfile .endif +libbuild: +.for _tool in tools/build + @${ECHODIR} "===> ${_tool}"; \ + cd ${.CURDIR}/${_tool}; \ + ${MAKE} DIRPRFX=${_tool}/ obj; \ + ${MAKE} DIRPRFX=${_tool}/ depend; \ + ${MAKE} DIRPRFX=${_tool}/ all; \ + ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/build install +.endfor + bootstrap-tools: -.for _tool in tools/build ${_strfile} usr.bin/yacc usr.bin/colldef \ +.for _tool in ${_strfile} usr.bin/yacc usr.bin/colldef \ usr.bin/makewhatis usr.bin/rpcgen usr.bin/uudecode \ usr.bin/xargs usr.bin/xinstall \ usr.sbin/config usr.sbin/kbdcontrol \ -- cgit v1.1