diff options
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/vanilla-kernel/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/vanilla-kernel/vanilla-kernel-5.18.8.ebuild | 134 |
2 files changed, 136 insertions, 0 deletions
diff --git a/sys-kernel/vanilla-kernel/Manifest b/sys-kernel/vanilla-kernel/Manifest index 15e7b7b97149..9f7803188294 100644 --- a/sys-kernel/vanilla-kernel/Manifest +++ b/sys-kernel/vanilla-kernel/Manifest @@ -37,6 +37,8 @@ DIST linux-5.18.6.tar.sign 989 BLAKE2B bc5164b6e60c406a87f9792e06cc7dc3e8a3ba82d DIST linux-5.18.6.tar.xz 129836456 BLAKE2B 2a13d888a259c6f30d8711c616751e9a978ffeba7da6167d5948075044988b5c4ebab1ee1b024e86587da7edd82cfead2a66303614a1b8ef56bf3c73c1a6809f SHA512 98069269ebb1f870c9df21c973f1f846d29ac4297a366775ff59fd2d3bc86e2d023b51312f024a8394e7b46210a4e6cab4e57394351477e535a16957033d33fc DIST linux-5.18.7.tar.sign 989 BLAKE2B c983ac65aafa1e3dc04fa6adb3778451f42b3ebf95f92179a2e6f00d8353699ba4b3a76f5fe8dc0aeee64b8a1bdd16cbb5823b1e3c85a62aacef558954665dd7 SHA512 7b06fdbecdd5ee33fa5e794e9c58d39db12f7f14e0cd7a715174f84d0ba309dbeca3dcd34c565c673d0dff75931696287c50cae40a86d33b8d833f53c8c1d3f9 DIST linux-5.18.7.tar.xz 129831552 BLAKE2B e5ae6756eac544d1813cfb386c212cfe9b0d3f6ce9df3e72c4f4e8755d99393ea7fa4c95d6a7b747b0ca8dfbfceb2b48ec958587789e83ddd5af06762d542e67 SHA512 3115ea2c637901dfb71ac4259e1b6ca8c32c9c59059f55c7dd728f4b4e5f1e9f2713a3963137d0e7ccdf4c277e0ff5c5baecd993d6f8ae8fe1e2520ddcc94cc7 +DIST linux-5.18.8.tar.sign 989 BLAKE2B fedd90f0c09011f51ebc7f49cc9c8361eb07788279f80e21bab90c9ab7d277184b1611d0c2391f413551b0ef6fcfa185254527e51df032001e98e0a05f21a763 SHA512 231b421f882e8be8f4863ae9d23a9c7239d5af157e13c82315fadb01cd9f45f1bf37116482169a1516230da22c3ac7a34ee875d7e3a905575f5265a9c9c14145 +DIST linux-5.18.8.tar.xz 129866236 BLAKE2B 92231982abac349aa682fc1af12a3707ac1b68ffc970a0679134f03e2c56a46ae6273c67c05d20bed100dda1c58cb9916de2757552405c280b52b1973f2da7a8 SHA512 1504be8d7e4ce88998e1c2a19f9d03cebdf322d6d6e0f14e58e822364f44b4477f2cdbc72fbda56008b33df115e4fa1fa227f519f610a7aa33dbdf1d8c861fe7 DIST linux-5.4.199.tar.sign 991 BLAKE2B 546df4e420a5908a653cfb2cbae8d13b6716149868f1e8ebd1c902578c3e81dc8ea8ece91af5488b1c83038e505d84e0e48b360e139e2b4600337fb544338655 SHA512 7598d840f9535fa872a610f617b6ed242a3eba9ac15e34d725ef117ee8b19336bbc130222582c201a8e09a4b8afbc206cbf44eaa9907ed5c05f24b537dfee13b DIST linux-5.4.199.tar.xz 112902300 BLAKE2B c3b509035b3ce660a0bad0d29b7a3c23a2005b990661be9764eece602e2be736a76d8adfc25f13d6ab76e0dca95e8a6ee804952a18763706b425d08e26159a44 SHA512 3aca7d71515011acd36d3dddc8d39fa0f08261dbe3555843955f6381a16a7b6a3b90cc3a01b21621d9e0c787f29ac5157ce28aaa3ec6decee0df4581c483ac51 DIST linux-5.4.200.tar.sign 991 BLAKE2B 0c7468a163433d75e61f3fda16a40206eeb5e99967e3ec8245fc2d66cc4e3471af2198676ca26c306ec228c0bfa5fe731a2f3393bbaa6bb9c38ef875e14c54f3 SHA512 d2a90de3b0c22de615c8f1c5b4676771c5c5fc5dc80a1ebf8a5a40dd1949677d70c37abda33e51f173dacb2fb4652c898a5237f6792f1c9e9af8874e7bec2bac diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-5.18.8.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-5.18.8.ebuild new file mode 100644 index 000000000000..2bc8aa91f184 --- /dev/null +++ b/sys-kernel/vanilla-kernel/vanilla-kernel-5.18.8.ebuild @@ -0,0 +1,134 @@ +# Copyright 2020-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit kernel-build toolchain-funcs verify-sig + +MY_P=linux-${PV} +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/mgorny/fedora-kernel-config-for-gentoo +CONFIG_VER=5.18.4-gentoo +GENTOO_CONFIG_VER=g1 + +DESCRIPTION="Linux kernel built from vanilla upstream sources" +HOMEPAGE="https://www.kernel.org/" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://github.com/mgorny/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + verify-sig? ( + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.sign + ) + 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 ~hppa ~ppc ~ppc64 ~x86" +IUSE="debug hardened" +REQUIRED_USE="arm? ( savedconfig )" + +BDEPEND=" + debug? ( dev-util/pahole ) + verify-sig? ( sec-keys/openpgp-keys-kernel ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/kernel.org.asc + +src_unpack() { + if use verify-sig; then + einfo "Unpacking linux-${PV}.tar.xz ..." + verify-sig_verify_detached - "${DISTDIR}"/linux-${PV}.tar.sign \ + < <(xz -cd "${DISTDIR}"/linux-${PV}.tar.xz | tee >(tar -x)) + assert "Unpack failed" + unpack "gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz" + else + default + fi +} + +src_prepare() { + 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="-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[@]}" +} |