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.15.40.ebuild | 131 |
2 files changed, 133 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index 3028966433fd..d4d3f1762fce 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -8,6 +8,8 @@ DIST genpatches-5.15-41.base.tar.xz 1716640 BLAKE2B d2a37f5bdbb541bad670240ee6fb DIST genpatches-5.15-41.extras.tar.xz 3868 BLAKE2B 11487f062c49431af029fadde1f01a95386d42e1349a658bca314bd26d356eb82d0292ca68ac34d4ba4593a25d7422458a7dcf306431dbe46e68c9306bd8ec82 SHA512 3153848739687683f02c65d1dc87b4aa27d0fead27ac9fee28acd2f8d0fdc118473445059bf756650512c5f3fa79b8a4a70882c2ab2d4329c4d7aef982e5e4d6 DIST genpatches-5.15-43.base.tar.xz 1785824 BLAKE2B 435e3a48c6d8b01d71f203e7373ca44b03794f7ec5dcb84cf919b0b0cea0fb06edadc4228b0c53cd71ec6b80f7a0b2040e60a3223dbad0d9fd444e4980528ad5 SHA512 b78e665d7e43f5de92f83e9d464da953aad3136dc35a63cbe1a5f098cc8133162cb5d47a7e9cd323d86f5835194c27daa48a648bef4e6fce29d706e5be33a0c8 DIST genpatches-5.15-43.extras.tar.xz 3932 BLAKE2B e6ad29d61c10175e8e31c91edbef3056922aeaa50583c64770fb1df714dd6764099b213a85c109d1057bec95aa5bd4485e8dcfce196ce7a6a0bbb682a7475965 SHA512 f85e4a409d4240bbb17ac3e3ca38afca1fa1a3ff8b31e9e2f7b4d5dfe6a255be38073f3e2dc02657bc309229281862d066851d4f57cf7213d8500c7efe64af8c +DIST genpatches-5.15-44.base.tar.xz 1805920 BLAKE2B c29bc5dce61deb71cce45dce36ef12f72674b9d04af57fcaa0a78da936334709e84a0660ff9e80951bc73e22dd9a803e942ca88a0f72a38debbb64909fe9b126 SHA512 e71b0088ce398102baf6a80d41af8662e9c712ecb8eea67db1fc83cd75c82943ea444671b43482ba445e0b4aff3ef38ddac10d90fcb7f48f09ad7ae4806155de +DIST genpatches-5.15-44.extras.tar.xz 3932 BLAKE2B 47d98e8b5fb0362cbb565cbde17c740c55909cef9958865593e312d47c52a7a21becda8bf7414482423732422118efaee87e741ccaa2f8b5231b111f5150a6fc SHA512 092e7143107fb37a83fb0658729c1ee5621a0c63d3e8a38325db598b65579d84089115f37e65d7fed45da3b3181b3edd32d5e1f01cc2e7835668251394b434bd DIST genpatches-5.17-11.base.tar.xz 684208 BLAKE2B 1c1f7a450a1f30d18f8e3eb7cb2db8b170f503a1b17343b25130408725f08c6ce0db7fe91eddb1b8d562bee0b6e60360baca4429aa09ffc1e7257b531ea6ed4e SHA512 5e0f2c89b93bd492c49d36627e6c6ded98e49f210e4c4880f84717e4248b711b5bce3d0db04ae78a29a01a47b3a2ae3ae5949cc02d755a22d63e6b7117477398 DIST genpatches-5.17-11.extras.tar.xz 3932 BLAKE2B 8f65276ac101924b918379e84da046a8fc56ba293ebf5c9ace449917e58400ef8ed5cd947d9de558ed95735996eba42e01053c8e71f1a3782696e1ddccfe22fc SHA512 d7baa2bbcf982ede22dbc06dd1a452759c876357ee65750b21bf5a6b22939e5a924311c6e2315f222a65386ec028399d5c82eb0a1b8a215757bcaad1d83b001a DIST genpatches-5.4-195.base.tar.xz 4639264 BLAKE2B 7a3558a8bb125d616bf10dc29045ce0e5b6432eaf4e38326727ee184ae38d90937fc0168bd2654a8c871b7a851a7977cb9ad1b6b258073b20988b51be189235d SHA512 7add11fe740fe7ebb785f6dd2548ce908a053e30fe5ae8eab3e2b95eb6c8da9f9c5dfaf3d2e50a0a319389631162018ea2675ff8770779e8be39bf10a8e21890 diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-5.15.40.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-5.15.40.ebuild new file mode 100644 index 000000000000..3e9875ab5936 --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-5.15.40.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##*.} + 4 )) +CONFIG_VER=5.15.19 +CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01 +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://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 ~hppa ~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[@]}" +} |