diff options
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/gentoo-kernel/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/gentoo-kernel/gentoo-kernel-5.17.4.ebuild | 132 |
2 files changed, 134 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index 613b87d93a02..9148a8edb110 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -18,6 +18,8 @@ DIST genpatches-5.16-22.base.tar.xz 1156348 BLAKE2B 320027e898f66751b1d0c8e82e63 DIST genpatches-5.16-22.extras.tar.xz 3800 BLAKE2B 73201b8988e7b2c41f9c45eadd21df333655f1d7e2a19b0f319d0b125df5d3aed3c68e9903d0be3d39d6f43fcef62fd95391a0c1eaa8228b40c97118f6993db3 SHA512 81e82fbf1286c4d1e080a4609eb4dd7e549b8b75851afe57c2a918fdfd48f98abf1edaab028e193ac4935ebd790cbd400b0a14ea60b81261281ae832209a2445 DIST genpatches-5.17-5.base.tar.xz 498648 BLAKE2B 07dde85c14b37b5b2e7716de4082477d23c2819de95d3beffec76ec78c54b3d0cdb223ba56c0562309e13eded3ca4be530eedbd862b5c34cdd2c437a4731c850 SHA512 178f09cf2dbf221a1edb34894eef3331e0b4f541abfdd4d1e1e5eccc12a69368c0f3d91dc4b3d26ce1a06fc6d77ba63d638cc1f53330257fe53d893e49ed4f43 DIST genpatches-5.17-5.extras.tar.xz 3800 BLAKE2B 84ff6d95364da66b1ea0a8cb830e855aa4bf262768385607d4ca59c09dd5159073a33f414facce97f3b1a90ec3f055adf03d48f3fae9d05609b75351375af422 SHA512 e4bf053bea92bf10d62dd4a7d07b9f135d540996f3f503da07af9259f6f1f86e17c00d0d1c955b5bb339a29b577de1df9936515e7e0c617847187d77c3b37bef +DIST genpatches-5.17-6.base.tar.xz 557368 BLAKE2B 7d9668f583167cb46a87a451416a69e1f1042bff745cca1394e83649580f920fd18aa030f558975f9ac4e256f70336ffd3b238616fd58697f9370753d7753d22 SHA512 3164fe7a6907bc7ceaf48dbc474c8d3807aa7499cb2a706995d3c27da89a19b34990d9b981d5d0e583ce23973a9a4dd2ad251d44c1f8d539dfd6e64d93416d28 +DIST genpatches-5.17-6.extras.tar.xz 3796 BLAKE2B 6921f442b3c5a3d1f5d437504668488c96879cfcbbfc096275afccab4664d01a0748b0a72e4bbcc1f1564829eeb8346402a14120d79a7be923cf08c0ecacf385 SHA512 8049dfa5390180a9d0cad7d18ea13cf2620e9883d733d8d5e2a09c11b26e4afd8ae28f81872e7e16bd6107205f0bf17edb475b390384fb4989d688b7b49630ae DIST genpatches-5.4-192.base.tar.xz 4516512 BLAKE2B dd316606186f305369ea67348acf0b6afbe2eacc16564851a1eb94224afcbdc066f920578092a15bacc7abb7a8f659aa44bde26859aae2525eaa84e8cd0447f1 SHA512 28bed80b1bfa457d24f8367a3a76460e569f7c8eb4f0a6b632f1898615ccb4da4c2fbba95dcfd1cce5675fe6151cee4c0df6bc0fdb158c25c25cf71a9397127b DIST genpatches-5.4-192.extras.tar.xz 1816 BLAKE2B 2d6760ff367ee0ba6ff8d56f81c7c3587ccd8c4f8fb952e3380148b2f3532a19cd614f352241134eb3256f8e59c000806f3d1eb33caa582e0c4be813d3275672 SHA512 f8d43a3a80abd947cbd667b3ed449215d98967fa8dc2200efbba86db946a04dc7dc971d74afe1aa6b923ea3f9914b28c3bcb9f6ec205b1bfb0cd60c0ae57758a DIST genpatches-5.4-193.base.tar.xz 4614484 BLAKE2B 94f35c7399a4912dc546f80271989f63bf0c838d953bfcc05cdf3240b7d88e0ce542b44000b21af0b88871d8933e637855b0f42bf3efe523eba2e93933958381 SHA512 9f3d60740388b4947d039f218b5f9e886cdfbe3e781109b6c24cea67d29408fb8f49f5a92fb6bde31bfdd131f6fd329ca2a867819d4dda7666ed84aebce2d5a3 diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-5.17.4.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-5.17.4.ebuild new file mode 100644 index 000000000000..cae8ad0f740d --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-5.17.4.ebuild @@ -0,0 +1,132 @@ +# 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##*.} + 2 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/mgorny/fedora-kernel-config-for-gentoo +CONFIG_VER=5.17.3-gentoo +GENTOO_CONFIG_VER=g1 + +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/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://raw.githubusercontent.com/mgorny/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/mgorny/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/mgorny/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/mgorny/fedora-kernel-config-for-gentoo/${CONFIG_VER}/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 + usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg +" + +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[@]}" +} |