diff options
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/gentoo-kernel-bin/Manifest | 6 | ||||
-rw-r--r-- | sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.15.ebuild | 161 |
2 files changed, 167 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index 8a199cd9ecc8..d3a887a0fa82 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -16,6 +16,8 @@ DIST genpatches-6.6-16.base.tar.xz 750868 BLAKE2B 13af5286f51a69dd0ad7b2543bcf0d DIST genpatches-6.6-16.extras.tar.xz 3704 BLAKE2B a33d9a80926abd8318f124fa6aa25f7181b88a6965c17908232ef2b866a27a5e856e464895994599265e0e57d8e1f81561758df4670f25ef5694e5d5f535ba95 SHA512 8ee1686a16886320b698ac0e3767804fc9bbaf595335203fb2899c727a0ca0f3e551ac13b3cbb97cec8d91e77257aa1da75669f1c41d263960875e9d31303b1a DIST genpatches-6.6-17.base.tar.xz 894152 BLAKE2B ff9c821916d3b1350ac30a44673eee52df18d5c7766ccfb7e682740889191080e947ca6f78b8f2af3b1b2b879326c0b530a53f7443a54ecd124b27e89e99e6bd SHA512 45b6df20d995ceddbccf72db94062339e021eaa4a121d0591a936e39b1e56c8f2581dd1fde03505914adb787445b4cfd998f7847f640785dfa1c05e7959125aa DIST genpatches-6.6-17.extras.tar.xz 3704 BLAKE2B d85a68fe7bf6e4693a41958a053705e35b8829c236b8fad024f7332f89be277708dce2bc931c013b3bf51e14e3b11162342893b7d257541677b17efa918c86b7 SHA512 d53c369e9f54f6de450a41882626d74b22315b8ca7c7b381089b77a6b1b5a1b444109e8fc9c25bdf22afeb92af252c963c700e0e309cfa272caf39c1f5855a55 +DIST genpatches-6.6-18.base.tar.xz 1008124 BLAKE2B 90cfa49d54e086a9fbaf20154f427def0097e76ba6ef5a0b41cd0004634a9d8dd5413e53ea80c340716f3d8dca3685e8aed5e7d8180a11b30e2893c084858092 SHA512 0c5c7d3ed4fb6594d075fd853a730023cbb1e2902377d59cc07d6ee0bc934b371d8a522405c63a0f90a8e0742aca4b770eb25311013c062e7484e5d6f33f1fda +DIST genpatches-6.6-18.extras.tar.xz 3704 BLAKE2B 9ce8d2ab8cdd70100a0552648053df120ba52c3ae281a6f102e5982550d15d7096eb2efcf9f5f30da17c6f86b2aa75d903f014c7232366699c5d82d493be8415 SHA512 e6aaa51fa7e0d519c5c129f029461d7217ba57cd252dff5203b84f6b0f6fbffbd1c0db8d9a30096623e5d442a5307254a8384a2da7869eb0024cd6546dd48958 DIST genpatches-6.7-3.base.tar.xz 19844 BLAKE2B 69f53a7bf61154f3644919b870ed4434ccd7ceeeb8c57e14c274c7be28a1f6c5b0af7975f4c0ef131ff5b53f3afa0a1a4b7c7db92202e11e3c1647524e8e9444 SHA512 5022aeb1970e8652b5f82d09642c22970bcae0e01deefbc0271cab9c054bd21ae4c3835f4fff0a22d14f5fa7495211a95c50b35535586dcdca3c2b1f45ce05a1 DIST genpatches-6.7-3.extras.tar.xz 3700 BLAKE2B ce7bc87494eec57d39330b1de3462b99a088781bca0beefad667674bbd9eaa2f2413c712638d16ef8c335b6a0e353aec83f4eb69e3da53a88d51ca6853d3254c SHA512 43558eb7a699d5e24c8f2bea13689adaacc6c7c58b4975c3d204a4c2278620032add6ca6017c3fc6ae70ade7e3e227a655deb989b85ef05acb05804d33475ec6 DIST genpatches-6.7-4.base.tar.xz 193776 BLAKE2B d0b6ee8e055d0c3b8122e1050818b49600a94c8b1b06ee4b6209d89207d527fc6c65352c728e359ad2830830ff25079a2d6d6ef6a55ecf60e43887c16673376f SHA512 5cc15425a7e9e80320f0b18b891d2efa2dfab4090441003b3c617d820c7e449a792aa266941bde0d22ba26e9a6999e42c3b686b270bc00389047678dd71b93d0 @@ -58,6 +60,10 @@ DIST gentoo-kernel-6.6.14-1.amd64.gpkg.tar 146083840 BLAKE2B e1acb6f9ed8e52f3702 DIST gentoo-kernel-6.6.14-1.arm64.gpkg.tar 118753280 BLAKE2B 8e7925024ea7b2e7cddbdf7504642666d2fabfa683b7e27297f2f532c8d84e4675af9318a67d3dbcd277f55f57721624c1a0152bb50b1d87a0de3e72189a00c4 SHA512 9ddcb39c3e86969902d447ba7b1955e27f0f4ddc2f9de987809a4e879c2a454ddd94f5c747023729080194be8cb7ad81170045fe4fc7adc8e6264782e40491fe DIST gentoo-kernel-6.6.14-1.ppc64le.gpkg.tar 64368640 BLAKE2B 5ecfbdfa3d1c7501908d837af9c47f60ad8704874aea8b1d7f572730765eba499a945ccea9b73bae2e3102cd6ac192d76d676e9c73ce57ce58d4fce79ae1c039 SHA512 bc253c401925d3e7b497f4921b0ac1b5f66fddf9f1775d593f25f489c2e6b70632632251623e7809cb51b554894f5a2e3ac04e8208ea4216a58a00c3d64d02e0 DIST gentoo-kernel-6.6.14-1.x86.gpkg.tar 68311040 BLAKE2B 73ce986afef9372888b870f2b20ed2fbb84929069114775b1db7cb91e82e4ab9a73058f3cbed923662e29cf033ba0e6429bcd582198ec0c3c5b17b770926cfa2 SHA512 18a27bd398ef75ac2886a2cda3575e09e98db3558fa585c00c3670e9dbe1e7252db3b5bb7c42a9bf4a3e2a1543c09906a3a72d604edd42e01ba111da0c080fa2 +DIST gentoo-kernel-6.6.15-1.amd64.gpkg.tar 146053120 BLAKE2B 346bd904be0555397ee1a6c0c54ae0a5be16f2a705689882f3e02a70c58641e21932ee9807d19d061df39f9bdd6355293da51937fc39dd431fc085ed80f3ceeb SHA512 cb42df6a7b12844714467459f4f9c0390ab2f1d9238cd92a0f40cf65c857b8e1193dd9e9fe637413b1d9d48beedd143ba1947540afd4dbdbb6b6a197bde8137d +DIST gentoo-kernel-6.6.15-1.arm64.gpkg.tar 118763520 BLAKE2B b81c40f5bab766a7a06cbccd7787afeb35ce990729cddd6836c8371795477d9bff4ead03168466c32cf8bd7aeaee665b07f8b12e4f56501c6ed5bf244480ed89 SHA512 8a215ac394bcb56440729c1cdd5bb80953357c7955030d106fc7f710df117add38b74664dfd4630356c276faac33e43bd1e66d67d9151e5b7290b886d68f9059 +DIST gentoo-kernel-6.6.15-1.ppc64le.gpkg.tar 64368640 BLAKE2B fa950cdf14efa5af303bf755881ffd94f17cfbf84745d82c34f393ab0145e34817a25f16d131ebdc25cc78a4c2dc51decca9acf0290105504425fbc883ff2aad SHA512 450d1eeb309f01abcadfe621e10eefddfddc773318ec0bcbe2147c5a5323dc4b38f1d155b262489b945d360d905622b107b5c1092366181840fe870592848a4d +DIST gentoo-kernel-6.6.15-1.x86.gpkg.tar 68290560 BLAKE2B 4076d10a53bf7c8195b4d3b8d35912625cc1d8f8db468abad276ad360f4e1f951c426c54e583920a073ebebfacf3eb7d0f023d48df749ca4c1478e7955cec9ec SHA512 c4f86ba92e0ee2f7576b9e31b740236385a3c87a33244bfd54f402fb3c1349c04bf97ef13a818254da0cbdd6d0829dc01f5c362402bb8ac7ab5b8ce3ebf0c1e8 DIST gentoo-kernel-6.7.1-1.amd64.gpkg.tar 148244480 BLAKE2B 331554d8368fbf7e066e57859875dc04bfed10e1b7d937ef149af894214e6a0350f43f8c3b87fc3590e01f7eab3c5b94fe03a5632bb606fc435a0f63fe06fda2 SHA512 c6e5f6646669e390b06db010ab2e30a803a3d15b7f898b45c565cc58426161f4c9f12529e8d7beedec57c153de0cd9c1a73c25099c5c75a0ab66e2730ce12f51 DIST gentoo-kernel-6.7.1-1.arm64.gpkg.tar 120647680 BLAKE2B 1ec1a5470c5f97bfa12e4e90ee58aa057c96a120ad8acd0fe62f858f8b685ac19f0759e76bf6d435243aa1b9d3dcdee4457b05eef2e2839b6d3589b38269dfab SHA512 35d41bf8df7fb65f8838c74d55afe005028af686859833e4bec8a86b061a804e48a425b77f222c3551188ccbd7b51b75491f5a13b69dd895cec9fc6405d59316 DIST gentoo-kernel-6.7.1-1.ppc64le.gpkg.tar 65484800 BLAKE2B c0dc567e77b591a0d93a94d2f9f07f091f48ea5dee481d47dccd7b148617be56cb38d6f89da010bfe344eab0f396f556221a9e6df54a1353c4fd6cbfb9dba4f7 SHA512 04cf5db20c604999aed94e9bf3d69b546b6247a9ca68cd1bc187b52ef82b4c890538d5aaa976ba596224b2850e63505ae3fbab8f569e7f0c030569469e6ee302 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.15.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.15.ebuild new file mode 100644 index 000000000000..9055f90433bd --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.15.ebuild @@ -0,0 +1,161 @@ +# 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 )) +BINPKG=${PF/-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}.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 + 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 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)" + 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)" + + # 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 + + 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 +} |