mirror of
https://github.com/opnsense/src.git
synced 2026-06-11 01:30:30 -04:00
release: Add NODISTSETS to skip legacy dist sets
`make -DPKGBASE -DNODISTSETS` can now be used to build an installer without any support for dist sets. Reviewed by: Isaac Freund <ifreund@freebsdfoundation.org> Event: Kitchener-Waterloo Hackathon 202506 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50919
This commit is contained in:
parent
47c3158b65
commit
3f494a4e5c
1 changed files with 16 additions and 3 deletions
|
|
@ -21,6 +21,7 @@
|
|||
# Variables affecting the build process:
|
||||
# WORLDDIR: location of src tree -- must have built world and default kernel
|
||||
# (by default, the directory above this one)
|
||||
# NODISTSETS: if set, do not include dist sets or MANIFEST
|
||||
# PKGBASE: if set, include pkgbase packages rather than dist tarballs in
|
||||
# disc1 and dvd1 installation media
|
||||
# PORTSDIR: location of ports tree to distribute (default: /usr/ports)
|
||||
|
|
@ -179,6 +180,12 @@ packagesystem: ${DISTRIBUTIONS}
|
|||
sh ${.CURDIR}/scripts/make-manifest.sh $$(ls *.txz | grep -v container) > MANIFEST
|
||||
touch ${.TARGET}
|
||||
|
||||
.if !defined(NODISTSETS)
|
||||
disc1: packagesystem
|
||||
bootonly: packagesystem
|
||||
dvd1: packagesystem
|
||||
.endif
|
||||
|
||||
.if defined(PKGBASE)
|
||||
PKGBASE_REPO= pkgbase-repo
|
||||
PKG_ABI= $$(${PKG_CMD} -o ABI_FILE=${.TARGET}/usr/bin/uname config ABI)
|
||||
|
|
@ -188,7 +195,7 @@ pkgbase-repo:
|
|||
mkdir -p pkgbase-repo
|
||||
( ${IMAKE} -C ${WORLDDIR} packages REPODIR=${.OBJDIR}/pkgbase-repo )
|
||||
|
||||
disc1: packagesystem ${PKGBASE_REPO}
|
||||
disc1: ${PKGBASE_REPO}
|
||||
# Install system
|
||||
mkdir -p ${.TARGET}
|
||||
( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
|
||||
|
|
@ -211,6 +218,7 @@ disc1: packagesystem ${PKGBASE_REPO}
|
|||
mtree -C -k type,mode,link,size | \
|
||||
sed 's|^\.|./usr/freebsd-packages|g' >> ${.TARGET}/METALOG
|
||||
.endif
|
||||
.if !defined(NODISTSETS)
|
||||
# Copy MANIFEST to provide legacy dist checksums in both modes
|
||||
mkdir -p ${.TARGET}/usr/freebsd-dist
|
||||
echo "./usr/freebsd-dist type=dir uname=root gname=wheel mode=0755" >> ${.TARGET}/METALOG
|
||||
|
|
@ -223,6 +231,7 @@ disc1: packagesystem ${PKGBASE_REPO}
|
|||
echo "./usr/freebsd-dist/$${dist} type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG; \
|
||||
done
|
||||
.endif
|
||||
.endif
|
||||
.if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
|
||||
# Install packages onto release media.
|
||||
${PKG_INSTALL} pkg || true
|
||||
|
|
@ -245,7 +254,7 @@ disc1: packagesystem ${PKGBASE_REPO}
|
|||
echo "./etc/rc.local type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG
|
||||
touch ${.TARGET}
|
||||
|
||||
bootonly: packagesystem
|
||||
bootonly:
|
||||
# Install system
|
||||
mkdir -p ${.TARGET}
|
||||
( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
|
||||
|
|
@ -256,11 +265,13 @@ bootonly: packagesystem
|
|||
MK_TOOLCHAIN=no \
|
||||
MK_RESCUE=no MK_DICT=no \
|
||||
MK_KERNEL_SYMBOLS=no MK_TESTS=no MK_DEBUG_FILES=no)
|
||||
.if !defined(NODISTSETS)
|
||||
# Copy manifest only (no distfiles) to get checksums
|
||||
mkdir -p ${.TARGET}/usr/freebsd-dist
|
||||
cp MANIFEST ${.TARGET}/usr/freebsd-dist
|
||||
echo "./usr/freebsd-dist type=dir uname=root gname=wheel mode=0755" >> ${.TARGET}/METALOG
|
||||
echo "./usr/freebsd-dist/MANIFEST type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG
|
||||
.endif
|
||||
.if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
|
||||
# Install packages onto release media.
|
||||
${PKG_INSTALL} pkg || true
|
||||
|
|
@ -281,7 +292,7 @@ bootonly: packagesystem
|
|||
echo "./boot/loader.conf type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG
|
||||
echo "./etc/rc.local type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG
|
||||
|
||||
dvd: packagesystem ${PKGBASE_REPO}
|
||||
dvd: ${PKGBASE_REPO}
|
||||
# Install system
|
||||
mkdir -p ${.TARGET}
|
||||
( cd ${WORLDDIR} && ${IMAKE} installworld installkernel distribution \
|
||||
|
|
@ -300,6 +311,7 @@ dvd: packagesystem ${PKGBASE_REPO}
|
|||
mtree -C -k type,mode,link,size | \
|
||||
sed 's|^\.|./usr/freebsd-packages|g' >> ${.TARGET}/METALOG
|
||||
.endif
|
||||
.if !defined(NODISTSETS)
|
||||
# Copy MANIFEST to provide legacy dist checksums in both modes
|
||||
mkdir -p ${.TARGET}/usr/freebsd-dist
|
||||
echo "./usr/freebsd-dist type=dir uname=root gname=wheel mode=0755" >> ${.TARGET}/METALOG
|
||||
|
|
@ -313,6 +325,7 @@ dvd: packagesystem ${PKGBASE_REPO}
|
|||
echo "./usr/freebsd-dist/$${dist} type=file uname=root gname=wheel mode=0644" >> ${.TARGET}/METALOG; \
|
||||
done
|
||||
.endif
|
||||
.endif
|
||||
.if ${.MAKE.OS} == "FreeBSD" && (!defined(NOPKG) || empty(NOPKG))
|
||||
# Install packages onto release media.
|
||||
${PKG_INSTALL} pkg || true
|
||||
|
|
|
|||
Loading…
Reference in a new issue