summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-kernel/gentoo-kernel/Manifest2
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.6.22.ebuild153
2 files changed, 155 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest
index e1755f62c7ab..6bc9c653184b 100644
--- a/sys-kernel/gentoo-kernel/Manifest
+++ b/sys-kernel/gentoo-kernel/Manifest
@@ -40,6 +40,8 @@ DIST genpatches-6.6-25.base.tar.xz 1351392 BLAKE2B e1f5df7796f7d50a244c37d2b5e4e
DIST genpatches-6.6-25.extras.tar.xz 3704 BLAKE2B e7709d6dc9f02a24a5efff213e4357a25777364cce38387b5a12149915017cf229546993de40b4e2aaa6c107b1930f091e5399c14b660d07f3e73a1a6c4f287f SHA512 babba6d4e397a1594d74dac9e588fe87ebc07523ddb5a8e4b23028043534a965d29a728cf7958da90e6544a3e1d0fc29de65542610f5ad513ca7d7edb5a89c5b
DIST genpatches-6.6-27.base.tar.xz 1392292 BLAKE2B 46e3c354f7c27182c2f97bd20c165fa8bb79317bb136afbbe1e0906cd405e7cbcab1293e724cda38491f0d1cd9e9009146f18ad9b5ecf54526e69aae43fbc9e8 SHA512 363d26f9410e2d526f07c0831d36733999ec284ee01d684ad15aa5856b007a2d2a189ca414358da87a479dcbbea7ae24add9d8019b4c41c8bf1aae7b67a3b490
DIST genpatches-6.6-27.extras.tar.xz 3700 BLAKE2B 36a21c970dd2c8f72a4496b9f72faea3e94fba49342e00b7cdfc0ca6d4f3ab14fef161a7d02ad13b1c7db73af3c96b1c145453d0645791b46b34f599b3947582 SHA512 996a1b0a5c625043ececbeacc648f4dd71da2e239482ca515b680b146ba6041feeb0924929b1b2b6ee4f3ecc24c85926e54e28058d9401d4399282151332dfce
+DIST genpatches-6.6-28.base.tar.xz 1406852 BLAKE2B 09691b429951a495b8dc0e076930d72f4f5c51c0f41cc0779d7c27bd1c161e007ab6ca9007ef43db4aeed4ead3ba84dcd93ba2b31fdd689c785fc38d0c46425a SHA512 500492b25b5a8eab5781e3c7758fa1685b1050bdf30b0c8fbb306db078de1bf06e0aeea6547fd7fa868dcb84047d9842f37f5851e3637633f693a5b653cfae96
+DIST genpatches-6.6-28.extras.tar.xz 3704 BLAKE2B a1c1a33eee156346766d88b142a1f199f483e3589930537c1329ef2e5946780278e902f2c912a639779ac76c61782b526b3dec8434ff678f30d4a6bbe4b95238 SHA512 f1ca783a6a90bdc40c92f004b01cd9ec4ae13db9b6ed71708c4489155df95c900d395ba3b682e62dcb69d71151f38759cc128b9775e3983d3760c01a1b453ae0
DIST genpatches-6.7-10.base.tar.xz 599552 BLAKE2B 952e3510f0e76381b0028179599e7bc05e6ad6a36a283abd4664cdc24d81d0ab287d6e1c077f489964608a86f3e7d8f4e2b9246bf01538b9d84cb80704f7474b SHA512 ec30398a92414b83d719b9f805edef1a8796e8b988a7384f75454f930a5a31ba05f1ea6ad1f48b2fb6e6d183450cc5ca10cf5c9f5c6bb3c47de27eda668fb76b
DIST genpatches-6.7-10.extras.tar.xz 3704 BLAKE2B a5264482e3081f585475897242e27707a0cb5cc838a17b25bf50632625d0bfe983c889603df6aac1ae2f96466d13ded9783d7d8c118c5cb8d6beea132d436d87 SHA512 5656a2daa02ef9148ca22faf9c4e64dd3c79cc4eea9a99c697b5e8de29550e0743782b60c00f2030fe8a7370931d86cd6bfd37339eb272e6dfc70d52ed125951
DIST genpatches-6.7-11.base.tar.xz 699832 BLAKE2B 22ff0e1ae4ab7fe8376b06ded03e482860055afb70b74badac3412376fbc7c8d700e226834f4f966cd187bf0a321a7d194e4d7138ec094188fb4b8ac60e3bb6f SHA512 fbc948c6b7f1e8ce5c7eb3cfcd4ec65f93b20453751abbde0d02464db0ca1b8515aaddc0e61308c93f6726a41724c42db17dd23ffe7ac023ff07b42910d0a89f
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.22.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.22.ebuild
new file mode 100644
index 000000000000..47f9c80f0aa5
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.22.ebuild
@@ -0,0 +1,153 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+KERNEL_IUSE_MODULES_SIGN=1
+
+inherit kernel-build toolchain-funcs
+
+MY_P=linux-${PV%.*}
+GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 6 ))
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo
+CONFIG_VER=6.6.12-gentoo
+GENTOO_CONFIG_VER=g11
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ 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/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
+ -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
+ amd64? (
+ https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
+ -> kernel-x86_64-fedora.config.${CONFIG_VER}
+ )
+ arm64? (
+ https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config
+ -> kernel-aarch64-fedora.config.${CONFIG_VER}
+ )
+ ppc64? (
+ https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config
+ -> kernel-ppc64le-fedora.config.${CONFIG_VER}
+ )
+ x86? (
+ https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config
+ -> kernel-i686-fedora.config.${CONFIG_VER}
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ arm? ( savedconfig )
+ hppa? ( savedconfig )
+ riscv? ( savedconfig )
+ sparc? ( 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
+ ;;
+ loong)
+ 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
+ ;;
+ riscv)
+ return
+ ;;
+ sparc)
+ return
+ ;;
+ 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
+
+ use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}