aboutsummaryrefslogtreecommitdiff
path: root/release
diff options
context:
space:
mode:
authorColin Percival <cperciva@FreeBSD.org>2024-04-10 03:25:34 +0000
committerColin Percival <cperciva@FreeBSD.org>2024-04-10 03:29:16 +0000
commit93e4813b9a157396ffbcf8456ca4f5c25599807d (patch)
tree5cd1d75f4f65044978fca66cc0b07b9101ef43b9 /release
parentac83063d37e5e92ad048cc4ed958654c02103f74 (diff)
downloadsrc-93e4813b9a157396ffbcf8456ca4f5c25599807d.tar.gz
src-93e4813b9a157396ffbcf8456ca4f5c25599807d.zip
release: make -j compat: cd inside subshell
Place instances of "cd foo && bar" inside subshells for compatibility with modern make(8) which uses a single shell for the duration of a makefile target. MFC after: 1 week
Diffstat (limited to 'release')
-rw-r--r--release/Makefile30
1 files changed, 15 insertions, 15 deletions
diff --git a/release/Makefile b/release/Makefile
index 3bfdde407cec..628a3e3140d4 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -117,7 +117,7 @@ clean: beforeclean
base.txz:
mkdir -p ${DISTDIR}
- cd ${WORLDDIR} && ${IMAKE} distributeworld DISTDIR=${.OBJDIR}/${DISTDIR}
+ ( cd ${WORLDDIR} && ${IMAKE} distributeworld DISTDIR=${.OBJDIR}/${DISTDIR} )
# Bootstrap etcupdate(8) database.
sh ${WORLDDIR}/usr.sbin/etcupdate/etcupdate.sh extract -B \
-m "${MAKE}" -M "TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET}" \
@@ -130,41 +130,41 @@ base.txz:
rm ${.OBJDIR}/${DISTDIR}/base/var/db/etcupdate/current/METALOG
.endif
# Package all components
- cd ${WORLDDIR} && ${IMAKE} packageworld DISTDIR=${.OBJDIR}/${DISTDIR}
+ ( cd ${WORLDDIR} && ${IMAKE} packageworld DISTDIR=${.OBJDIR}/${DISTDIR} )
mv ${DISTDIR}/*.txz .
kernel.txz:
mkdir -p ${DISTDIR}
- cd ${WORLDDIR} && ${IMAKE} distributekernel packagekernel DISTDIR=${.OBJDIR}/${DISTDIR}
+ ( cd ${WORLDDIR} && ${IMAKE} distributekernel packagekernel DISTDIR=${.OBJDIR}/${DISTDIR} )
mv ${DISTDIR}/kernel*.txz .
src.txz:
mkdir -p ${DISTDIR}/usr
ln -fs ${WORLDDIR} ${DISTDIR}/usr/src
- cd ${DISTDIR} && ${TAR_CMD} cLvf - --exclude .svn --exclude .zfs \
+ ( cd ${DISTDIR} && ${TAR_CMD} cLvf - --exclude .svn --exclude .zfs \
--exclude .git --exclude @ --exclude usr/src/release/dist usr/src | \
- ${XZ_CMD} > ${.OBJDIR}/src.txz
+ ${XZ_CMD} > ${.OBJDIR}/src.txz )
ports.txz:
mkdir -p ${DISTDIR}/usr
ln -fs ${PORTSDIR} ${DISTDIR}/usr/ports
- cd ${DISTDIR} && ${TAR_CMD} cLvf - \
+ ( cd ${DISTDIR} && ${TAR_CMD} cLvf - \
--exclude .git --exclude .svn \
--exclude usr/ports/distfiles --exclude usr/ports/packages \
--exclude 'usr/ports/INDEX*' --exclude work usr/ports | \
- ${XZ_CMD} > ${.OBJDIR}/ports.txz
+ ${XZ_CMD} > ${.OBJDIR}/ports.txz )
disc1: packagesystem
# Install system
mkdir -p ${.TARGET}
- cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
+ ( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
DESTDIR=${.OBJDIR}/${.TARGET} MK_AT=no \
MK_INSTALLLIB=no MK_MAIL=no \
${_ALL_LIBCOMPATS:@v@MK_LIB$v=no@} \
MK_TOOLCHAIN=no MK_PROFILE=no \
MK_RESCUE=no MK_DICT=no \
MK_KERNEL_SYMBOLS=no MK_TESTS=no MK_DEBUG_FILES=no \
- -DDB_FROM_SRC
+ -DDB_FROM_SRC )
# Copy distfiles
mkdir -p ${.TARGET}/usr/freebsd-dist
for dist in MANIFEST $$(ls *.txz | grep -vE -- '(${base ${_ALL_libcompats}:L:ts|})-dbg'); \
@@ -197,7 +197,7 @@ disc1: packagesystem
bootonly: packagesystem
# Install system
mkdir -p ${.TARGET}
- cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
+ ( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
DESTDIR=${.OBJDIR}/${.TARGET} MK_AT=no \
MK_GAMES=no \
MK_INSTALLLIB=no MK_MAIL=no \
@@ -205,7 +205,7 @@ bootonly: packagesystem
MK_TOOLCHAIN=no MK_PROFILE=no \
MK_RESCUE=no MK_DICT=no \
MK_KERNEL_SYMBOLS=no MK_TESTS=no MK_DEBUG_FILES=no \
- -DDB_FROM_SRC
+ -DDB_FROM_SRC )
# Copy manifest only (no distfiles) to get checksums
mkdir -p ${.TARGET}/usr/freebsd-dist
cp MANIFEST ${.TARGET}/usr/freebsd-dist
@@ -233,10 +233,10 @@ bootonly: packagesystem
dvd: packagesystem
# Install system
mkdir -p ${.TARGET}
- cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
+ ( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
DESTDIR=${.OBJDIR}/${.TARGET} MK_RESCUE=no MK_KERNEL_SYMBOLS=no \
MK_TESTS=no MK_DEBUG_FILES=no \
- -DDB_FROM_SRC
+ -DDB_FROM_SRC )
# Copy distfiles
mkdir -p ${.TARGET}/usr/freebsd-dist
for dist in MANIFEST $$(ls *.txz | grep -v -- '(${base ${_ALL_libcompats}:L:ts|})-dbg'); \
@@ -331,8 +331,8 @@ release-install:
${XZ_CMD} -k ${DESTDIR}/${OSRELEASE}-${I}
. endif
.endfor
- cd ${DESTDIR} && sha512 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA512
- cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256
+ ( cd ${DESTDIR} && sha512 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA512 )
+ ( cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256 )
.endif
.include "${.CURDIR}/Makefile.inc1"