diff options
-rw-r--r-- | sys-kernel/gentoo-kernel/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/gentoo-kernel/gentoo-kernel-5.10.102.ebuild | 131 |
2 files changed, 133 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index 34dda60bc1fe..14b06f6c272b 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -2,6 +2,8 @@ DIST genpatches-5.10-107.base.tar.xz 3012848 BLAKE2B 912470b5bad9a695029f8949dcb DIST genpatches-5.10-107.extras.tar.xz 3876 BLAKE2B d067bba64a51aee7eb835bc865660aa253bb08a49603b2b3bf7acd5cde0afc2db96dce1e4aa850a4b87dc064fdb0d394567ff182c178c5e59480e437d9a317ff SHA512 2e837983c89e7e79e23415ef382e0bd4e2103c0bd6cf1d6db0324b21e74f1bbf01e98f87ed6f41544f2b0b8f5dac426ebc7e27d4b87c7a38f013c611f9560499 DIST genpatches-5.10-108.base.tar.xz 3036772 BLAKE2B 83a6a8d4bead879f56931f8920176e8c2c20d3de91a88eb0c2de3783e9f04493ea41721ef8cb53661dce3e927cabb10f91ecb1d2cde6c1084764ef595acd5b38 SHA512 ddf6f2ca84cf6816ca0560f0b22875c55e6a10a57d54d5baa04998de42265cd03c756483ad4b17b84b56af6e3d65ecef754ba527468e36d470e9748cb3d22b8d DIST genpatches-5.10-108.extras.tar.xz 3876 BLAKE2B f7de9f6c0d250e38f05c58f9af88f7f28fc933ec582a64aaac188fc6aab5ac2b053a43b833a74001c5517d4f91d7244c768870f12bb3635a8ceb6517e6d92d02 SHA512 0db6d9d1cd21280228152b7b08f7a9a321a9a8d2fad1c33f43c71af3200ee1a0c2688e5469633513a7fddcb753a8d7cb6abf2dcd5f1b97b9c9117c272a7b5190 +DIST genpatches-5.10-109.base.tar.xz 3065192 BLAKE2B f87cd7cf1945cb9dfcc977b315f98aa53319f97810e3767c24b073c9f7a4da5df957b5801a190aa2da303727e811a30d6a5471728f8b18b505a5746f8df2b646 SHA512 14e38bfdcd2d1e7bd849d69eb7bee6ac17532b14ad7ad8c52fe9864b31783bd31077119c363b3b1db9dfcaf82faf7e990e947dcc6c6a38be305b4ff2d4128cd0 +DIST genpatches-5.10-109.extras.tar.xz 3876 BLAKE2B a7ba052b553b45a44eb92d19083f44944ad143b74e8d9cc50fad86b3962f66ea4e62aab32ecc14c89a25f7ecf552f97878762dbf3ae4d931a14f6d519857f3db SHA512 6b09eb543df2757c1cecb7f3dd03ef10435c249987ec32f3f04206b9f0b7241b42310dcd23f8ce5b215826ce401a51ae1c047bef051e47709687b53adb071b70 DIST genpatches-5.15-25.base.tar.xz 1018612 BLAKE2B 493b8c695f2bfcdfa36712143ffad423883273b48e0ae45db226d9e12b809764538716fa8dc257d0cb211f9db50f6af437cc8d19dde0e8af5a10accf85a3b4be SHA512 f268ace309d283079e0f491a3a77de56d4a18fa31bba643be4d215f931baf6a251d1e28c358d4b606b0ea15fc34e71f6b13901f5eb95f18ebad79f384bb6e5a9 DIST genpatches-5.15-25.extras.tar.xz 3876 BLAKE2B 17a20913e907e6b6a87afdd7775b7f9811bc3eed5374b957244242fdbc655519606063656bb8e5f51ded3168f73e99832d0cdf66e830811dc1e5ea0c0b8a2582 SHA512 1b8f4424996351a70c26f5a90c2490078c1a8daa80da578e2e3b3d1c4be6a4474d40cbd2e6fae8b1f1b9389cdaf2257e01a14ac6c2f7ece8a883d745555a686e DIST genpatches-5.15-26.base.tar.xz 1059876 BLAKE2B d3a7b03647f3ce4a10ac4b75e52723d26cd56f880ca786883c236b3569c7312555ca57325a039bf9713cb44b930190b2e099de6ef9d677a9cd5e8ef9179fb52e SHA512 241f1cf431626fd0f406f5a661363a29293a23057c58a4cf63bce6383d126e4f276be371eda670abec8699036d46c1896788f1f56d47239fdb9eeec6d5c8a51b diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-5.10.102.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-5.10.102.ebuild new file mode 100644 index 000000000000..5ae2b7f9674b --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-5.10.102.ebuild @@ -0,0 +1,131 @@ +# Copyright 2020-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit kernel-build toolchain-funcs + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 7 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +CONFIG_VER=5.10.12 +CONFIG_HASH=836165dd2dff34e4f2c47ca8f9c803002c1e6530 +GENTOO_CONFIG_VER=5.15.5 + +DESCRIPTION="Linux kernel built 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 + https://github.com/mgorny/gentoo-kernel-config/archive/v${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="debug hardened" +REQUIRED_USE="arm? ( savedconfig )" + +RDEPEND=" + !sys-kernel/gentoo-kernel-bin:${SLOT} +" +BDEPEND=" + debug? ( dev-util/pahole ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +QA_FLAGS_IGNORED=" + usr/src/linux-.*/scripts/gcc-plugins/.*.so + usr/src/linux-.*/vmlinux +" + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm) + return + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + hppa) + return + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-gentoo-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + kernel-build_merge_configs "${merge_configs[@]}" +} |