The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=988426e815c12a899c8c6853090b8c8fca7ed5cd
commit 988426e815c12a899c8c6853090b8c8fca7ed5cd Author: Dag-Erling Smørgrav <d...@freebsd.org> AuthorDate: 2025-08-11 13:54:51 +0000 Commit: Dag-Erling Smørgrav <d...@freebsd.org> CommitDate: 2025-08-11 13:54:51 +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 --- 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 0aae2c42ac04..4022b915c972 100644 --- a/share/man/man7/build.7 +++ b/share/man/man7/build.7 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 8, 2025 +.Dd August 8, 2025 .Dt BUILD 7 .Os .Sh NAME @@ -667,8 +667,12 @@ This is currently incompatible with building .Pa src into .Cm packages . -.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 59e51c394a35..0e4ffd92724e 100644 --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -124,7 +124,10 @@ PORTSMODULESENV=\ all: .for __i in ${PORTS_MODULES} @${ECHO} "===> Ports module ${__i} (all)" - cd ${PORTSDIR:U/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 @@ -132,7 +135,10 @@ ${__target}: ports-${__target} ports-${__target}: .for __i in ${PORTS_MODULES} @${ECHO} "===> Ports module ${__i} (${__target})" - cd ${PORTSDIR:U/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