git: 65cbf5862ead - stable/13 - kern.post.mk: Support flavors in PORTS_MODULES
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 14 Aug 2025 16:03:18 UTC
The branch stable/13 has been updated by des:
URL: https://cgit.FreeBSD.org/src/commit/?id=65cbf5862eaddd0dfccc6c43e9054252d0ca788b
commit 65cbf5862eaddd0dfccc6c43e9054252d0ca788b
Author: Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2025-08-11 13:54:51 +0000
Commit: Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2025-08-14 14:00:06 +0000
kern.post.mk: Support flavors in PORTS_MODULES
MFC after: 1 week
PR: 288596
Reviewed by: pkubaj
Differential Revision: https://reviews.freebsd.org/D51833
(cherry picked from commit 988426e815c12a899c8c6853090b8c8fca7ed5cd)
---
share/man/man7/build.7 | 10 +++++++---
sys/conf/kern.post.mk | 10 ++++++++--
2 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/share/man/man7/build.7 b/share/man/man7/build.7
index 57280f967a38..2b36d68e6397 100644
--- a/share/man/man7/build.7
+++ b/share/man/man7/build.7
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 30, 2024
+.Dd August 8, 2025
.Dt BUILD 7
.Os
.Sh NAME
@@ -619,8 +619,12 @@ as part of the
and
.Cm installkernel
process.
-.Bd -literal -offset indent
-make PORTS_MODULES=emulators/virtualbox-ose-kmod kernel
+Each port must be specified as
+.Ar category Ns Li / Ns Ar port Ns Op Li @ Ns Ar flavor ,
+e.g.
+.Bd -literal
+PORTS_MODULES=graphics/gpu-firmware-intel-kmod@kabylake
+PORTS_MODULES+=graphics/drm-66-kmod
.Ed
.It Va LOCAL_MODULES
A list of external kernel modules that should be built and installed
diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk
index 6664afc2bf16..5301a711bcb5 100644
--- a/sys/conf/kern.post.mk
+++ b/sys/conf/kern.post.mk
@@ -132,7 +132,10 @@ PORTSMODULESENV=\
all:
.for __i in ${PORTS_MODULES}
@${ECHO} "===> Ports module ${__i} (all)"
- cd $${PORTSDIR:-/usr/ports}/${__i}; ${PORTSMODULESENV} ${MAKE} -B clean build
+ port=${__i}; flavor=$${port#*@}; port=$${port%@*}; flavor=$${flavor%$${port}}; \
+ cd ${PORTSDIR:U/usr/ports}/$${port}; \
+ ${PORTSMODULESENV} ${MAKE} -B $${flavor:+FLAVOR=}$${flavor} \
+ clean build
.endfor
.for __target in install reinstall clean
@@ -140,7 +143,10 @@ ${__target}: ports-${__target}
ports-${__target}:
.for __i in ${PORTS_MODULES}
@${ECHO} "===> Ports module ${__i} (${__target})"
- cd $${PORTSDIR:-/usr/ports}/${__i}; ${PORTSMODULESENV} ${MAKE} -B ${__target:C/(re)?install/deinstall reinstall/}
+ port=${__i}; flavor=$${port#*@}; port=$${port%@*}; flavor=$${flavor%$${port}}; \
+ cd ${PORTSDIR:U/usr/ports}/$${port}; \
+ ${PORTSMODULESENV} ${MAKE} -B $${flavor:+FLAVOR=}$${flavor} \
+ ${__target:C/(re)?install/deinstall reinstall/}
.endfor
.endfor
.endif