diff options
-rw-r--r-- | sys-kernel/gentoo-kernel-bin/Manifest | 6 | ||||
-rw-r--r-- | sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.9.ebuild | 172 |
2 files changed, 178 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index 56a0bd02e9fa..cb8e912c050d 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -16,6 +16,8 @@ DIST genpatches-6.10-10.base.tar.xz 490332 BLAKE2B 6311b976880a1fe3cb902ba6e4d39 DIST genpatches-6.10-10.extras.tar.xz 4056 BLAKE2B edb14475e8c07f04d54e6953f8518ea631660ffcdaa8797eba19768b3a193df51822d508dd7b360ced634d0045878f77996ba765498bca3bf001d9a4c223fd8a SHA512 a0379c1ecdbb7a8d6f3b3f82db60d5fd7503598ac26c2f11f6f549e360a648053896cb8db235257bfa7bcad251c90c6dc38116e238c0e2447117eab83a42b4d4 DIST genpatches-6.10-11.base.tar.xz 553020 BLAKE2B 11a958ebd8848d9023a9cdcb877039ba04f72169ad78e47661890d31b73ae7a9fbdec8d12507a1d16eed08ba59f4a6fdc38ed8b6b02d05cb44198dbfcfef31e8 SHA512 3a3c1e5cbee053ab4c9c731bafa723ffcdfc8179e62fdc0eb16469a15abb5fec8ef4ff395305fd4502ea9cab70702e071f6cf9d0397cb185a987e8fbc880123f DIST genpatches-6.10-11.extras.tar.xz 4060 BLAKE2B 98d5747be50ef0a270a561f379946213cb32596e01aa6da66a3cdd8a57dbea491af4265b052bc9fb1089e74818e249ac85228bc85aeffa34f8bd18396ceaa18e SHA512 e1ba5f037ae58c9ea4434f60817b53282494c8d25a659a0b6d9b75db384f7706b122bde225640e2028cfc36022a6cb0d1b5711685a4a265c75f3592c278a67f6 +DIST genpatches-6.10-12.base.tar.xz 602316 BLAKE2B 6cd02be7fbe2322d246e826d04236dba2ec5b40acc9c8575fd7a5d0d745cd0629778176e97db920ea198e939d332407d9dfa2f369ea4e075be05197a1ba7ef8a SHA512 595e302e05256994ad0077f41c6d6c3677eeb64a7cd1b11c823c689822d4d257bdd8b722b22542fc779e777ffc28f782f7bf69e8a0bb6ec3f3d2b111aaa789fb +DIST genpatches-6.10-12.extras.tar.xz 4060 BLAKE2B 77b8b8cc0ed8af03ca45e1224e6de1f14d59682aeb411488e4c5eb6f9f4252a50ae442d60eeba496491c62013c7f1cb7af9f7e40622e1f48de7f0b85c4686c28 SHA512 95cf8c15fab7ea99e7c55166d445494d85cf843d9bc32e3055789ac20d725b52687d1077890c22aa39719a9d0fc7745b0d3346d014077171b1009a3a353f04f0 DIST genpatches-6.10-9.base.tar.xz 401220 BLAKE2B 3335d5d29c347526cea6104b9cca56b8ed8ee0f1de9ee8a6f55d66514df829fcd197b8281b2261f6dfb979276b65bc654d4b1257868b5b80a2411fbd2f076f11 SHA512 9d2319c2b86b80355464d661f675a331a4245405bb84184a4d061649abdeb5955b6ebeaee1cefbe3c669f810c9da645b7fb637af4dcb45cb9b69e715c6e46f1f DIST genpatches-6.10-9.extras.tar.xz 4056 BLAKE2B 2cba382236beae6374462f6147d6e164314cc8f7d7be87547902153c035b970ada27f4817a6de2d569116118eea0d95d42aa44de2147475c47c732abfedd9952 SHA512 358d82794809d49f4b24bdf10c49cc4fbe8ac0a45f86dfdc018d2c778b757c002d9bd129d935146b84daf809e95f5235fccf7466d2498755154b9c77e5a2b46d DIST genpatches-6.6-54.base.tar.xz 2922380 BLAKE2B f65404127bb6547208aeddac1996a4a2659bd99ff7429bcaff28247a867c000e962457725eab80db2c76297f1e5c27806dc6fb23e31d5694b6df783e65995227 SHA512 102f721f87478ad18599bb5ff65cd236180dd3d9d058786a5306cb36be3f30a2d2ef684e83b6f458d4de78a196323e87d346eba704bfbce733010aed6ac3d7f9 @@ -64,6 +66,10 @@ DIST gentoo-kernel-6.10.8-1.amd64.gpkg.tar 288440320 BLAKE2B e88d13a464ee6f2cbcd DIST gentoo-kernel-6.10.8-1.arm64.gpkg.tar 264837120 BLAKE2B dbdcebd687d94f79dd884a53454eb3311d55f7c1468ad36f7fc860d4d56565cc20df87936533090d07da2fb36d1a6ff371e09143f4388af76d68e4644d9981f3 SHA512 e6b32c2888876589704243eb06dc396bf4223f8c3d239bcb56871eeebf32dca7f0bf8ad7431a8a59f25d5719c95a274b1d47eb2e837bc47dcb44ed42b45b1538 DIST gentoo-kernel-6.10.8-1.ppc64le.gpkg.tar 71987200 BLAKE2B 752e14de7022fd418d9b9ffc618b151ced5d80c2a958e1ee656855937d388053dd5efa0313db73a055c778bbfd28335377703a6ed0b6edfd193bc91a448424ce SHA512 2cfb81f3fa3e47d62f0fb8e9baea02ac4a2f1899fbc8ad53cf1fd630302fec0ace243bdf7a383eb228c59a5b356810caf13503e34b4b6c8d205c05c77074907e DIST gentoo-kernel-6.10.8-1.x86.gpkg.tar 75550720 BLAKE2B 6eb0a543b3b0c35bf63a8e558e1270e47556cf931c6e0d99b8a4fcfb6e34ee18f246c53685b7e70cb5694914c0f2a29a3d1e1aaf97f4fd7175c6b3e13fbd4ed6 SHA512 dd66a95760477d23a3a19546ae9d68fb9e5b686d02b0d6c33745463357eae567e65e147ceac0508cbdd40599347915bd5aa74254451215b7a9a927b722b9ec7c +DIST gentoo-kernel-6.10.9-1.amd64.gpkg.tar 288419840 BLAKE2B 4d8a1b0d6326e1aa04cb16c0388a4ef4cb4d988ccad524d0d6894475acae252c07cd74047c3c16217ba90a03898493608b084c4b4c3608ecc1dd9ab3404896d8 SHA512 2381703b3e21a00b3a25bb44d37642dab0cfaf879ba262acbb860d814b257976a99d3d5afd428fb7bc28688ff3fc4fe38d299a216ed6d97d2b510cab94ae0370 +DIST gentoo-kernel-6.10.9-1.arm64.gpkg.tar 264755200 BLAKE2B 151bc713b7ef16633e530a9d27fe1d67e30172ecf3d90f25374f3e8d2cfed8cf7239e171b8689856aae78bd9c52932edbcb72bcab7a82355f773c0756beb06d9 SHA512 af32ffaa29db9d44acd7b184741f667382b9432ddf5789f0ab0e9b8f1d9ec820643573204e9b568b4ba62c9732e159f1b88da773a95a6a9312d78313efa7a8bb +DIST gentoo-kernel-6.10.9-1.ppc64le.gpkg.tar 72028160 BLAKE2B 260776139ff3eb89fc8964e011e9cfc96889c96ab08b856f5458231f246c44c425d83de685b7db526ed6c2606521c27bfb9d1e48089c381c50016edecc8256d6 SHA512 2baa10a45cd6481ea2b9d5cfd362ca1745cf6bb7d36282b8d811636b8e0591351507452c2ede1cabf78c8a280639e7973c69bcd530d787c9367d9f70c557db74 +DIST gentoo-kernel-6.10.9-1.x86.gpkg.tar 75540480 BLAKE2B 6cfd27e737f78ae16cf6a663f86b2e8b0a49e96d0b7e3c6866edc2ef5e4c5356b16e1f8396c824365af5473588441b456226016e3e6068d6eacbf97a314d1249 SHA512 e25f332c53d89c55d99b9e759550d8016b2853755496a998fed48fa7c4d0698c405b26c741480a13a06c5475fddd58f3efd94bb4de44dc3b827ff211ef9ec254 DIST gentoo-kernel-6.6.47-1.amd64.gpkg.tar 149637120 BLAKE2B fcee3f615fe143b8b12d741bf0df758f68c607b0315ec054c6c804d7999339fadb5d62c355ad6e110b5633e8622a4b8f075bd3aa93d40f22fcf00b6b4b2ae7b9 SHA512 18ae1954bc9c10404a201fd9d511521f6f9ba9781f994e8d0ee082c4edc2908125c4db59a38fb672e492bbc8363d4c90f7d3ee216cd5e8dc5e7b0aed8362555c DIST gentoo-kernel-6.6.47-1.arm64.gpkg.tar 119695360 BLAKE2B 9bc6ae80d5e41bf39577a6c27cbf47f550c33951f19fc4f9c46dbf15a181593f20b15679f7ae33623a15cc555602ee8828ecee14900f2af14711bf8fd33fc5eb SHA512 4079e67ae3e639b3559026c66e87f2fbe4f0884f02d0f0b73f97f16fc2547d4f599ea49a0868cb06a5d4254e378962fd21f581c430c5a5e0c4cfd782504599d2 DIST gentoo-kernel-6.6.47-1.ppc64le.gpkg.tar 64256000 BLAKE2B cfa82483ac8a788be9b84ea9246224bce5ec2fe71711e063d6fec46286ef72d488655323cf01beea628d73f8f8e57d42452869ede0a50c57caad474f9eed500c SHA512 2aa632e90471d8c41e275c95cd636725384958b251a4db30ee75fe2f13de4af7ac70a42fb44ef83278d7df4bf5fe5bc1e1f9f080ee71f66c6baed0a290714246 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.9.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.9.ebuild new file mode 100644 index 000000000000..d5c4f186a89c --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.9.ebuild @@ -0,0 +1,172 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_EFI_ZBOOT=1 +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_SECUREBOOT=1 + +inherit kernel-install toolchain-funcs unpacker + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 3 )) +# XXX: Change me back to PF afer 6.10.8-r1 +BINPKG=${P/-bin}-1 + +DESCRIPTION="Pre-built Linux kernel with Gentoo patches" +HOMEPAGE="https://www.kernel.org/" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG/-2/-1}.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" + +RDEPEND=" + !sys-kernel/gentoo-kernel:${SLOT} +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + dev-util/pahole + virtual/libelf + app-alternatives/yacc +" + +QA_PREBUILT='*' + +KV_LOCALVERSION='-gentoo-dist' +KPV=${PV}${KV_LOCALVERSION} + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + cd "${MY_P}" || die + default +} + +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 + + 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-${KPV}" + 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 "${MY_P}" "${makeargs[@]}" modules_prepare +} + +src_test() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + kernel-install_test "${KPV}" \ + "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \ + "${BINPKG}/image/lib/modules/${KPV}" +} + +src_install() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + 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}/usr/src/linux-${KPV}"/ || 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 +} |