summaryrefslogtreecommitdiff
path: root/Makefile.inc1
diff options
context:
space:
mode:
authorLexi Winter <ivy@FreeBSD.org>2026-01-06 01:48:04 +0000
committerLexi Winter <ivy@FreeBSD.org>2026-01-06 01:48:04 +0000
commit0b298e314a8b47c1f2bf8a9ff86c050accbd744d (patch)
treea9d3a15befbefb629e83dbe739167686d438c018 /Makefile.inc1
parentf224591746bdaf14ad5f63de4738a3146cc2f55f (diff)
Makefile.inc1: Fix INSTALLEXTRAKERNELS for one-kernel case
If BUILDKERNELS contains a single kernel, and NO_INSTALLEXTRAKERNELS=no, then ${BUILDKERNELS:[2..-1]} returns the first kernel in the list and that kernel ends up in both INSTALLKERNEL and INSTALLEXTRAKERNELS. This breaks the package build because it means we generate that package twice, once with an incorrect install path of /boot/kernel.NAME instead of /boot/kernel. Only set INSTALLEXTRAKERNELS if we're building at least two kernels. Fixes: 2c0e9a76c1ce ("Makefile.inc1: Make NO_INSTALLKERNEL less of a hack") Reviewed by: jrtc27 Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D54539
Diffstat (limited to 'Makefile.inc1')
-rw-r--r--Makefile.inc14
1 files changed, 3 insertions, 1 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index b8f59686784d..5005e4e0acc7 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -1844,10 +1844,12 @@ NO_INSTALLEXTRAKERNELS?= no
.if ${NO_INSTALLEXTRAKERNELS} != "yes"
.if defined(NO_INSTALLKERNEL)
INSTALLEXTRAKERNELS= ${BUILDKERNELS}
-.else
+.elif ${BUILDKERNELS:[#]} > 1
# First kernel is installed separately by INSTALLKERNEL, typically to
# /boot/kernel, rather than to a config-suffixed directory.
INSTALLEXTRAKERNELS= ${BUILDKERNELS:[2..-1]}
+.else
+INSTALLEXTRAKERNELS=
.endif
.endif