summaryrefslogtreecommitdiff
path: root/Makefile.inc1
diff options
context:
space:
mode:
authorAlex Richardson <arichardson@FreeBSD.org>2018-08-20 10:39:53 +0000
committerAlex Richardson <arichardson@FreeBSD.org>2018-08-20 10:39:53 +0000
commit4acc8a67bad0a91dd9dbe07f2904a5dfdf313817 (patch)
tree70a6c867af59750d67a36afa548c0d6cfbce944c /Makefile.inc1
parent078018e0ac7f389525fdcdabe3080fb73bc61827 (diff)
downloadsrc-test-4acc8a67bad0a91dd9dbe07f2904a5dfdf313817.tar.gz
src-test-4acc8a67bad0a91dd9dbe07f2904a5dfdf313817.zip
Don't create directories in ${WORLDTMP}/legacy with mtree
This has two advantages: 1) We no longer create lots of empty directories that are not needed 2) This is a requirement for building on non-FreeBSD hosts since mtree will only exist after the bootstrap-tools phase there. Aproved By: jhb (mentor) Differential Revision: https://reviews.freebsd.org/D16773
Notes
Notes: svn path=/head/; revision=338098
Diffstat (limited to 'Makefile.inc1')
-rw-r--r--Makefile.inc140
1 files changed, 17 insertions, 23 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index 44af27d8963b6..70756d6653b4f 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -968,29 +968,10 @@ _worldtmp: .PHONY
.endif # !defined(NO_CLEAN)
@mkdir -p ${WORLDTMP}
@touch ${WORLDTMP}/${.TARGET}
-
-.for _dir in \
- lib lib/casper lib/geom usr legacy/bin legacy/usr
- mkdir -p ${WORLDTMP}/${_dir}
-.endfor
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.usr.dist \
- -p ${WORLDTMP}/legacy/usr >/dev/null
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.include.dist \
- -p ${WORLDTMP}/legacy/usr/include >/dev/null
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.usr.dist \
- -p ${WORLDTMP}/usr >/dev/null
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.include.dist \
- -p ${WORLDTMP}/usr/include >/dev/null
- ln -sf ${.CURDIR}/sys ${WORLDTMP}
-.if ${MK_DEBUG_FILES} != "no"
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
- -p ${WORLDTMP}/legacy/usr/lib >/dev/null
- ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
- -p ${WORLDTMP}/usr/lib >/dev/null
-.endif
-.for _mtree in ${LOCAL_MTREE}
- ${WORLDTMP_MTREE} -f ${.CURDIR}/${_mtree} -p ${WORLDTMP} > /dev/null
-.endfor
+# We can't use mtree to create the worldtmp directories since it may not be
+# available on the target system (this happens e.g. when building on non-FreeBSD)
+ cd ${.CURDIR}/tools/build; \
+ ${MAKE} DIRPRFX=tools/build/ DESTDIR=${WORLDTMP}/legacy installdirs
_legacy:
@echo
@echo "--------------------------------------------------------------"
@@ -1003,6 +984,19 @@ _bootstrap-tools:
@echo ">>> stage 1.2: bootstrap tools"
@echo "--------------------------------------------------------------"
${_+_}cd ${.CURDIR}; ${BMAKE} bootstrap-tools
+ mkdir -p ${WORLDTMP}/usr ${WORLDTMP}/lib/casper ${WORLDTMP}/lib/geom
+ ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.usr.dist \
+ -p ${WORLDTMP}/usr >/dev/null
+ ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.include.dist \
+ -p ${WORLDTMP}/usr/include >/dev/null
+ ln -sf ${.CURDIR}/sys ${WORLDTMP}
+.if ${MK_DEBUG_FILES} != "no"
+ ${WORLDTMP_MTREE} -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
+ -p ${WORLDTMP}/usr/lib >/dev/null
+.endif
+.for _mtree in ${LOCAL_MTREE}
+ ${WORLDTMP_MTREE} -f ${.CURDIR}/${_mtree} -p ${WORLDTMP} > /dev/null
+.endfor
_cleanobj:
.if !defined(NO_CLEAN)
@echo