commit:     b0b5d85e8e4fee2ec34f26ef2551198cb32b2c65
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  4 18:26:39 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep  4 19:09:24 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0b5d85e

sys-kernel/gentoo-kernel-bin: Bump to 6.16.5

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-kernel/gentoo-kernel-bin/Manifest              |   7 +
 .../gentoo-kernel-bin-6.16.5.ebuild                | 229 +++++++++++++++++++++
 2 files changed, 236 insertions(+)

diff --git a/sys-kernel/gentoo-kernel-bin/Manifest 
b/sys-kernel/gentoo-kernel-bin/Manifest
index 05fef5b64e2b..217d877c5748 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -58,6 +58,10 @@ DIST gentoo-kernel-6.16.4-1.amd64.gpkg.tar 329318400 BLAKE2B 
fdeb7af107ca33d7cb3
 DIST gentoo-kernel-6.16.4-1.arm64.gpkg.tar 293007360 BLAKE2B 
7436cc363062e4f322162dc52810f16498808fd7450e0ee8c2fa812713638e65520156e4ca09acd3d0776441440db9535e9c27997c09f5bdcc6845547512518b
 SHA512 
4a6556641420757f781f91344691e983315b021a23a7009c7f9f5dd1afbb38d2378739a874c8f597091c024e3887d8b4eb65a3d57791042457bd4ef7baf10263
 DIST gentoo-kernel-6.16.4-1.ppc64le.gpkg.tar 75182080 BLAKE2B 
ae9380c77be6db81d6a3cd7587e6fcd83672a7ef8d1af9fe2783c660c10af6fbb3347dbfb3e4ed731090eb63a10fb9ac5c0f43acae891ad3f35ddca229eb58c6
 SHA512 
567a13dbde39225463eaf657d34dd459f1c36dd09e6fcf76b62d32276bdd190f8924e420c5c86307376fb3de2279b1f51a20f0bee7fc5d13dc9ca71b98deb05e
 DIST gentoo-kernel-6.16.4-1.x86.gpkg.tar 82728960 BLAKE2B 
c4935cfecfa38cbb34af853be376c3a50649c73f9896bbb749879bf807cb34e6cd10d5ae070baa0da20246212cd8baab548a6a3085c5bdaa5cc1c22ad626720c
 SHA512 
92abd4cd809f3cda8c0aeef1a7aa8963c2206c47eb2a5b0908612a47d28c8f0338bde582f3c21aff8fea86a8af8ff461f71b5f14ab57811642050511ecc5ad4e
+DIST gentoo-kernel-6.16.5-1.amd64.gpkg.tar 329369600 BLAKE2B 
270da639f9bd90e109332fc0ba2c48d1d6bf11ea6b628f7cd9ef69ea7e0d2187ea540ef35b1e0eba9a441aea5c93aad6560bca1f2ff973266ec4f11482106f37
 SHA512 
e6919a04d4799019367f5ddabd0e3b56c14f4b49aa5860f6ea2213a84339e4667230332fc5ea8b610a8268d0a70b39b28d5e77d4554291b725989b6c29f1ccfc
+DIST gentoo-kernel-6.16.5-1.arm64.gpkg.tar 293007360 BLAKE2B 
cfe880c5321df99bd27c47d8e2bade08cfadac2083ea0d1e73d5b44734cbc8bdc4f7a6f96425711cbe1b6406d86fbc13baf8c5d3d8f7bb5c8add027c115b433d
 SHA512 
49563e57e88c72bb9e7d46bf99d6f690c613f27f38319e721edfc7da91d3e525322e3b5ccf7923dd1b822c52d8b537d7595eada5e5df538074da3c999e9c55af
+DIST gentoo-kernel-6.16.5-1.ppc64le.gpkg.tar 75192320 BLAKE2B 
e874bb228651b619e30cdb8c726593e4fbfac5f8c6d93aabee47b1c25b7f0a2956a2bc51ae3c57bb2c7a700c0579343e38f9abf10c5d881c68cfb4fb6f0d0e81
 SHA512 
f3c671cb2a1ab538ee08d03869c62801c75e523365f7c26180a3358ee25210173b3c799729b3dd018ebd055ca65bb6724456e7e3b952411ef879949f9d6989e8
+DIST gentoo-kernel-6.16.5-1.x86.gpkg.tar 82708480 BLAKE2B 
b15fb66c0542b3c940c7142515df1083bd68c6780bc5903ee1e259b7b75485dc4eef40ca18cbf45796823ccaca5a3bfefaed82e6dfadb4202af24f4d19589d0d
 SHA512 
addd201d8b6142501d2dac5b9d596fd35aee85806c54b95d4d8b0ff7bdddb47b6682ce7fd949b43ed5a1398c0993c0763e5798b7011c4e043d49dd5bc5c6714c
 DIST gentoo-kernel-6.6.101-1.amd64.gpkg.tar 273172480 BLAKE2B 
b1da6a7d2b4d33c3749f346567de2bba79f3dca4dc41ccab10f3dd774b9f922bbef89b72b6c38d3b0b6cce78c5a881946ea2b5ad5275bd13f7db505c8bdcd25a
 SHA512 
a0acff8292b01ae82a7fa7dfb77dd7d6b5cfb7b40f2caa990d3c5e02e4bfcf7adfedc4a4684805d86fcd8a31cd76083d586876b60f54b0b42ce9f89795614e9f
 DIST gentoo-kernel-6.6.101-1.arm64.gpkg.tar 246476800 BLAKE2B 
5637dd5fc471f46b3b418603db313f4d4c986affb4b0692a5bea2bf95067dc24a9bb379ea04298435723fc852cb1d1354833c5e4a98d44c9d14be0cd83d0ee49
 SHA512 
575f81218c8e91ca9296ef8d8fa318c0427a779e90800d080db5b65edb0bce32cb675fef37786e526a0848d3cd8bf329b7df874612db7285972a1324e2880367
 DIST gentoo-kernel-6.6.101-1.ppc64le.gpkg.tar 64481280 BLAKE2B 
d6396e594d7610f07e4db1e6061d0e58fab52be5684585a8286d09499f8782c98a86d9736da2760730e464de528448973c2f56969ee43d1db90e2e85a26fcc43
 SHA512 
e74d256f61042c157bbae7e345e1bdaafb7f4d81e8a931b665bb3528a0371e5edcb5092dcd70981c9860fca0771b7b35a884f5912529531fb3ce571b1531942a
@@ -88,6 +92,7 @@ DIST linux-6.x-sha256sums-20250815.asc 162838 BLAKE2B 
d5f8f57ce2d08a3d56ef4715ec
 DIST linux-6.x-sha256sums-20250820.asc 163857 BLAKE2B 
f4a8b55e798922b4e20eb1cd46db04a25542fed1c6eef23ee5f054ebc4b21aa6328532119b18d94cea26dcc5f09a4d668bc52052c919e1ac7ea766ad7c9b937d
 SHA512 
0d1830c65db75e7c59d0d70195da9c8fcb9d7364d67f6aa3fbd21f8dc1dd27f3737111afa84672728386e1942fd12cbeffb38f834f1a520f14443e68a21ac71a
 DIST linux-6.x-sha256sums-20250823.asc 164194 BLAKE2B 
7bf74d594d5bf818793b8a93f5d5a2119b16f5ab2c79cf313febf7eb9eb6094aef0c1b63ee1d9b983097dde381301125f85c8b37da967da2f69a772055afd0d5
 SHA512 
659016ae12304fec75b3ab398733da73753523974aa2f765a222352ce226ddc411a23f4cb6c502ca9d97d28a8277ac9b19a2ee59d3a84c5f53b22c1db6c617ae
 DIST linux-6.x-sha256sums-20250828.asc 165554 BLAKE2B 
aaa421cca8c38daec94e7aacf5d4196671f527a933367104959da3b5013192087eebfc730026b451e6f18da922743da065452533b7cad6d5574e1a4a15eaac1e
 SHA512 
737c067789ea1f1f6bdc4ace4e7ae026f20020bcd74906e909fdbbc5cca92c716e059b942fb1e27593f5745936307c6cdda5ae237720f22b131a5c76814b6bd8
+DIST linux-6.x-sha256sums-20250904.asc 166914 BLAKE2B 
6237094e716a4a6bd7c4396bc3b4d1e5c5207581cf051a62a472260e15a707684db25f78b6092bbe4b5eb300dc2faf38338c93a1200ab2035e75c57fc8cc89f6
 SHA512 
32af3425faeae7c21d8c57ab7bf9018470ab5764acdcd0ca958d5ce2b6563f2b38c72a56aab63e04d6c423f94d191cea9abea7a00aa3db0c816d597ea15d6016
 DIST linux-gentoo-patches-5.10.240.tar.xz 19396 BLAKE2B 
f61ba4218c2fb65f3e67b7c3480936fdf00edf8e278554d5aae81ce7ac71c8f8c83f7b71dbbd679ac2305004c847b0a11670b59b137fb11cf77c4d0849ddfcf8
 SHA512 
3368213c927b3d672490d0af3653dcc8d8784ea165d70a6eaf3fdacb936637a67a07de4b3a06a06eeb42109a083bbf82c3a5a03b1f98a2d240039de6ff704d7c
 DIST linux-gentoo-patches-5.10.241-r2.tar.xz 23680 BLAKE2B 
eb45c2920811c4afbcf6354e3e9724f3ef6e9e26eb2d4682b45e0e7d81fbb88e0d26517d556b05df6f01e7e90e4f0f11238b9fbd84e9ad5bde85ab375c9febaa
 SHA512 
74290ffdf7fdc926f804009dddfc71ffad5b90bf8cfdb1912d851d7ef0e4dd49856517c13a1236e3566f2a1cafe5d091f736406d5112e625672c0a6c952e4363
 DIST linux-gentoo-patches-5.15.187.tar.xz 8636 BLAKE2B 
64db6ded446586a589fc36753258ec166cc1260b95fa43e7612f0e5f3f831668dd81c5ec6339bf3bf2dca6228c624cf114ae9380290eddb4acec949f84de3ca9
 SHA512 
b18fd19031ad2f8078ad37cd654a6dffccbe53cec1e0c008ff56c5088a32c7c87895cc00be64d79f5252e842ba757a4e6681a09e5d0ef2f986c9d67666eee81e
@@ -99,6 +104,7 @@ DIST linux-gentoo-patches-6.12.44.tar.xz 22180 BLAKE2B 
97b49825846827d29ca2bb313
 DIST linux-gentoo-patches-6.16.2.tar.xz 85676 BLAKE2B 
31adfc6ebdfe2412c1576734351a6ff5bc0c1cae86e87f3cfbf555d07e8441c64bd0e31f3760674e931a510a9401935dee46689eeff6f5ee5c28029a889a40cf
 SHA512 
aa74585b4c71202176c851cc2b08569a752da58f5a43c5b1fb3dfd59db8ff016907985d448c51f4163b951a5bc500b81eca647e1b6a7c20ab7287292d4c2a3b8
 DIST linux-gentoo-patches-6.16.3.tar.xz 90080 BLAKE2B 
0fdafabbaf6ebcbb997debdc17b5baec5a7e3154902a9093891e5d839540c55ddcba94ba34af11bbc374badcff67d1e47999bc998e5b21168eb92b332438ea01
 SHA512 
83de7cefae3d9ad9d47ae49db4a8328725b7b44fbd4e854dfad2a33917eace57958e9e25d275c83a5d026c2391b529015ac840e2fa3f3cf13733e570349d25e0
 DIST linux-gentoo-patches-6.16.4.tar.xz 89184 BLAKE2B 
57ee7fcbbc519ff327162163b81f910ff90216b19b066acf7c873f69afdcba99f9d38be7c8998522b3870376441d8b3be5c9de7a12f8464bbaf597e18162a966
 SHA512 
b4c02d84b7023359e0f378459c31a6b0984d743a9415f667824295292f448aae185665c39537ca9fb8bbff3473956dd90419bbf42dce0b9eb3bdd1fa9465a7c5
+DIST linux-gentoo-patches-6.16.5.tar.xz 88704 BLAKE2B 
38096552b25e4366ae4b4086b6777e468a52b846d4d9483aa42dadfd49e1d9c3e8a1d00f89a4e3018b7ccb9885b71aa3361a5c5e2c3d1baa2d0ae8ef5f14a263
 SHA512 
d5905c4e68cea8199f297186fc8174bb80dfd5354f534eb96f0d4c8757bcf7c8108964df54dbf035cb9f6d1336d195be527b57b85701ee121f51ac3826b7eb66
 DIST linux-gentoo-patches-6.6.100.tar.xz 42828 BLAKE2B 
e9d17c21e5355919e30e1a93178d3977d6ca1bf964ba18b601518616f31e098d65cb5008003fb6c8e1a8a5cc3ed803eaef3e1c9af5f1a895d230f172412b1283
 SHA512 
95c2790a5ebcca9f2b9e1ff098be0bcb9ef60f134a0f955995f27c020cff0d6831fc1af7c159b0bb918d3e3eba351f9428458d6e6964e9e751bd85afd47f7a2b
 DIST linux-gentoo-patches-6.6.102.tar.xz 43900 BLAKE2B 
119b27bfae8914cc13dcc64203bf4c6f57a6f4713eb84a19980a17be0a121658b5ed4d7ac93ba94e60adf4bc1134c7c1f174b6ade123ece292ef39911afb74f6
 SHA512 
a5606b750c6018655c7bf6357805afab65e08eb8a9c429cec927b1d79ee6a0ec9faf4734445ff261870953d247920f2bdb5cf199e937a8e272062f6609adad4d
 DIST patch-5.10.240.xz 6786568 BLAKE2B 
1cb287b2c99bb403585cad3500a2de0819db40ea62a72d276c2b53d8637915cfc0350051bfdfc99cbb56a4e839331b7e11cbb2abdf6768a683d44e798ee5862d
 SHA512 
91f059de27701a33e5c4d40f2d3e982dc60d9dc14fa8cb6a0bbd49e4452195715f0093a563e3a1db1efa37b3a1e09e74b0a6d53f77357757ffd29374abcead19
@@ -114,6 +120,7 @@ DIST patch-6.12.43.xz 2759136 BLAKE2B 
a667414254b536de9d0158ceaf1e208241817352f2
 DIST patch-6.12.44.xz 2834532 BLAKE2B 
812cb9e1a980a0ababa1a8a89e86798674c9fbfac401b1551b59d50f7df949c9ab24014b2d3e06b49f38b8da7af0df7fec112ef5b0765504d646c07bb7cfbede
 SHA512 
ac82bd5ceb75e6e0bccad3faf9f07c2a11415552efb5db40a65b50347974cb39bc4fd9f43afe3f3a5ac475bfcc767735d9e9eebc1def441b6d887269b23b94ec
 DIST patch-6.16.3.xz 404136 BLAKE2B 
3b33459a827feb8c31bdc5ef80e0a16d80c8555c8f6482aee2d4965cdf4072f172704498ff9bbc29a20a71400338a001e0fc23ed53691164012120c9200e32ef
 SHA512 
b4ca71e98add9b84a0f3aad3fdc994d225bf051d033290ebbfde208eb8044d5904278871863a3ffe927b6f2b45a82284dfb036b0198bc8d120530a64b4b6844d
 DIST patch-6.16.4.xz 541776 BLAKE2B 
f343d8d03d5b09e06fbf906df7ac6175726c5cef8f2b9db2f31f509785d5d6e2a4d6b5573e8f6cce818e08e6a21da19320e2af3b43207fbd549a738ac2455f33
 SHA512 
b71b17fdc8f25e4e4e05b364c31a66502a3e00e6e3d66808f9726098f1f2e315e3666aa69c6f164a6cf8f1c2c4359fcd620b0dd624a98d007da4bd34310b03f1
+DIST patch-6.16.5.xz 593096 BLAKE2B 
d31bf76e05249e8414b1df045eff96015b6b47b38aa36745fdca1ea3f5f2c6d552cb1a7eb9d57c3234d3ec069333cab5e0b87619232fc850881188c8f0f48465
 SHA512 
d146208501727047695524cd1e5d6c4b4e008e1d9e354ff49460b972a6dd187f7ce4a6891a7856b4bc31ead63299523253d8b03c6134c4a09373decee74a7e66
 DIST patch-6.6.101.xz 4660596 BLAKE2B 
3b02a5a37a67113ec35d647bb13f729fa0b883fa59b004e7b19b401bed374b700ef806f27285c0951c2dc8cd3e0af16ae7d9fc3268b4f5020eafb1d0361aaab8
 SHA512 
bcb5671c660a84f34556210dd525c6b38f3a9cf6c78bbc6b7d936f8efeb3170b27bfbf4a343b0ac94659cc63a35c479e1e158ca35043d5937eebbaf4fd8cadb6
 DIST patch-6.6.102.xz 4713208 BLAKE2B 
8790f52d46e96c3e4ac88e883dd9bb1875abef3ca0a860fbd348bd6f6857465f0da53aae376df60b9a0e22451a2303d2ddcccc407322d3cd0659344a5acd589a
 SHA512 
97bb31a9aa4e417145d951bdd95a7c1138ec13e66e0869362f209be13fb638e09afbbdbed4b0dc01c2550d061bf6526ae4123760d9e00d1a464870329456d958
 DIST patch-6.6.103.xz 4835452 BLAKE2B 
477d10f8cc23326a6c6d195529327546d3addf11436c6696ce4f3b1c8bae1622f04da0abb6cd257126db4fe44408466b94a16400ce8b29b98421297cb0e0f91f
 SHA512 
305eb896563c19b6d9cd9a4faddd7b39b41a651f64dfee017364cd18c962f6e1c1840e8350532d13007afbe5d89bdfb8a982c328586ce1d2e7e3f199836654aa

diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.16.5.ebuild 
b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.16.5.ebuild
new file mode 100644
index 000000000000..902b3a5d0967
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.16.5.ebuild
@@ -0,0 +1,229 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+KERNEL_IUSE_MODULES_SIGN=1
+
+inherit kernel-install toolchain-funcs unpacker verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.16.5
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20250904
+
+DESCRIPTION="Pre-built Linux kernel with Gentoo patches"
+HOMEPAGE="
+       https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+       https://www.kernel.org/
+"
+SRC_URI+="
+       https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+       https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 
1).x/patch-${PATCH_PV}.xz
+       https://dev.gentoo.org/~mgorny/dist/linux/${PATCHSET}.tar.xz
+       verify-sig? (
+               https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 
1).x/sha256sums.asc
+                       -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+       )
+       amd64? (
+               
https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar
+                       -> ${BINPKG}.amd64.gpkg.tar
+       )
+       arm64? (
+               
https://dev.gentoo.org/~mgorny/binpkg/arm64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar
+                       -> ${BINPKG}.arm64.gpkg.tar
+       )
+       ppc64? (
+               
https://dev.gentoo.org/~mgorny/binpkg/ppc64le/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar
+                       -> ${BINPKG}.ppc64le.gpkg.tar
+       )
+       x86? (
+               
https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar
+                       -> ${BINPKG}.x86.gpkg.tar
+       )
+"
+S=${WORKDIR}
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug"
+
+RDEPEND="
+       !sys-kernel/gentoo-kernel:${SLOT}
+"
+PDEPEND="
+       >=virtual/dist-kernel-${PATCH_PV}
+"
+BDEPEND="
+       app-alternatives/bc
+       app-alternatives/lex
+       dev-util/pahole
+       virtual/libelf
+       app-alternatives/yacc
+       amd64? ( app-crypt/sbsigntools )
+       arm64? ( app-crypt/sbsigntools )
+       verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+QA_PREBUILT='*'
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+       if use verify-sig; then
+               cd "${DISTDIR}" || die
+               verify-sig_verify_signed_checksums \
+                       "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" 
\
+                       sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+               cd "${WORKDIR}" || die
+       fi
+
+       unpacker
+}
+
+src_prepare() {
+       local patch
+       cd "${BASE_P}" || die
+       eapply "${WORKDIR}/patch-${PATCH_PV}"
+       for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do
+               eapply "${patch}"
+               # non-experimental patches always finish with Gentoo Kconfig
+               # we built -bins without them
+               if [[ ${patch} == *Add-Gentoo-Linux-support-config-settings* ]]
+               then
+                       break
+               fi
+       done
+
+       default
+
+       # add Gentoo patchset version
+       local extraversion=${PV#${PATCH_PV}}
+       sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || 
die
+}
+
+src_configure() {
+       # force ld.bfd if we can find it easily
+       local HOSTLD="$(tc-getBUILD_LD)"
+       if type -P "${HOSTLD}.bfd" &>/dev/null; then
+               HOSTLD+=.bfd
+       fi
+       local LD="$(tc-getLD)"
+       if type -P "${LD}.bfd" &>/dev/null; then
+               LD+=.bfd
+       fi
+       tc-export_build_env
+       local makeargs=(
+               V=1
+               WERROR=0
+
+               HOSTCC="$(tc-getBUILD_CC)"
+               HOSTCXX="$(tc-getBUILD_CXX)"
+               HOSTLD="${HOSTLD}"
+               HOSTAR="$(tc-getBUILD_AR)"
+               HOSTCFLAGS="${BUILD_CFLAGS}"
+               HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+               CROSS_COMPILE=${CHOST}-
+               AS="$(tc-getAS)"
+               CC="$(tc-getCC)"
+               LD="${LD}"
+               AR="$(tc-getAR)"
+               NM="$(tc-getNM)"
+               STRIP="$(tc-getSTRIP)"
+               OBJCOPY="$(tc-getOBJCOPY)"
+               OBJDUMP="$(tc-getOBJDUMP)"
+               READELF="$(tc-getREADELF)"
+
+               # we need to pass it to override colliding Gentoo envvar
+               ARCH="$(tc-arch-kernel)"
+
+               O="${WORKDIR}"/modprep
+       )
+
+       local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+
+       # If this is set it will have an effect on the name of the output
+       # image. Set this variable to track this setting.
+       if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then
+               KERNEL_EFI_ZBOOT=1
+       elif use arm64 && use generic-uki; then
+               die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build"
+       fi
+
+       local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+       local uki="${image%/*}/uki.efi"
+       if [[ -s ${uki} ]]; then
+               # We need to extract the plain image for the test phase
+               # and USE=-generic-uki.
+               kernel-install_extract_from_uki linux "${uki}" "${image}"
+       fi
+
+       mkdir modprep || die
+       cp "${kernel_dir}/.config" modprep/ || die
+       emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+       local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+       kernel-install_test "${KV_FULL}" \
+               "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+               "${BINPKG}/image/lib/modules/${KV_FULL}"
+}
+
+src_install() {
+       local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+       local kernel_dir="${BINPKG}/image${rel_kernel_dir}"
+       local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+       local uki="${image%/*}/uki.efi"
+       if [[ -s ${uki} ]]; then
+               # Keep the kernel image type we don't want out of install tree
+               # Replace back with placeholder
+               if use generic-uki; then
+                       > "${image}" || die
+               else
+                       > "${uki}" || die
+               fi
+       fi
+
+       # Overwrite the identifier in the prebuilt package
+       echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die
+
+       mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die
+
+       # FIXME: requires proper mount-boot
+       if [[ -d ${BINPKG}/image/boot/dtbs ]]; then
+               mv "${BINPKG}"/image/boot "${ED}"/ || die
+       fi
+
+       # strip out-of-source build stuffs from modprep
+       # and then copy built files
+       find modprep -type f '(' \
+                       -name Makefile -o \
+                       -name '*.[ao]' -o \
+                       '(' -name '.*' -a -not -name '.config' ')' \
+               ')' -delete || die
+       rm modprep/source || die
+       cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+
+       # Update timestamps on all modules to ensure cleanup works correctly
+       # when switching USE=modules-compress.
+       find "${ED}/lib" -name '*.ko' -exec touch {} + || die
+
+       # Modules were already stripped before signing
+       dostrip -x /lib/modules
+       kernel-install_compress_modules
+
+       # Mirror the logic from kernel-build_src_install, for architectures
+       # where USE=debug is used.
+       if use ppc64; then
+               dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)"
+       elif use debug && { use amd64 || use arm64; }; then
+               dostrip -x "${rel_kernel_dir}/vmlinux"
+               dostrip -x "${rel_kernel_dir}/vmlinux.ctfa"
+       fi
+}

Reply via email to