summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel')
-rw-r--r--sys-kernel/gentoo-kernel/Manifest2
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.6.29.ebuild153
2 files changed, 155 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest
index 6ff599bef379..1627c172de4a 100644
--- a/sys-kernel/gentoo-kernel/Manifest
+++ b/sys-kernel/gentoo-kernel/Manifest
@@ -10,6 +10,8 @@ DIST genpatches-6.1-97.base.tar.xz 5144036 BLAKE2B fd20d0a6c4b3f2bb68a97bc71e485
DIST genpatches-6.1-97.extras.tar.xz 3812 BLAKE2B d76227c06153026771849653a004ba3474a895e8757c46bc943eee5e30eddb86c7ee50272b339def3c07224ff65ad09e0e6cdd84f5622d2f7e74ef56e7c3ddbb SHA512 b2df67590530801817fbb0d9bc1a317df5642af16147bb325ff562e3cd2796296592a12ecfc1775f6cf9302ae7740c3cf3ec9c8637c4bbf8f7a0893eaaaf1695
DIST genpatches-6.6-35.base.tar.xz 1860992 BLAKE2B afeb95582f83a941d830e8a90d1b7e6275d6d43b41de93aeb01dc743b1afafc5d675d98b66b528899fe9e69fe856402059932be58487c74bfc0102cff748244a SHA512 bf2848bc7e668b8b8df410f22f66b575ccd3a4d160efc6ac5d3549e4d34dc10d81736d8dbf689e64414491d4bb5479c54ee8ba7d6ad9d3dcae7db1d15c13dff0
DIST genpatches-6.6-35.extras.tar.xz 3704 BLAKE2B 23fe1a854b29b205e93ac82a796ed6eabbc96774648168f616c2366f647dedd5f5ebade68059bc7e9f8aad5b57c8b7577b6e098859484f35c07913cb4e3567a2 SHA512 37e311b153e411df00489bf4973e1a414b480c4f2d6ac488ddd8af3f717461b14c53143696628df3750168869cfcc3cfc209599454f9873e28ae1e1390198076
+DIST genpatches-6.6-36.base.tar.xz 1937600 BLAKE2B 8e3483fb9e7b3f6f63e97eb4dc66e7f0ea8c48fc22c17981d930d89fdb878fe0325fa7898df1baa8e8252a2ca122ab77e027e0e1da0881c9240a70d5dd912951 SHA512 8b66b6584b7d14ef3a897e4d71395340d6b350ed53a656988f40487da3819d403fdacc209df593459042d6c5f3ec4605f3e0d7cd78654cbcee9928ea022a6be6
+DIST genpatches-6.6-36.extras.tar.xz 3704 BLAKE2B f264b10b2956dee9762df626cc764f53f8935b774fa84c08e553b52cc23bc91e48580b46cb5ba29f2364ac6ef98ef8993757e750cc7e5d020061118483083bb6 SHA512 c006fad1e9cd0aaa3d8d4698e8fa44a17dfa121eab23991cf3549a49cb132543a070b4ed3ab980267225eec8700dd0c6e9b71c20489a16288d22fcefd0166a9a
DIST genpatches-6.8-10.base.tar.xz 574628 BLAKE2B 87b6006dd317b24157dc7af3e0386ff598c9b596e0fe7cdc5f8f109d56191ff6741d6c55f359bc1e43ce9fc2887a614edbc1a2871343dace4ee57d2f472ff8a4 SHA512 fdc83b414ca5d72323646d345d95071a175f0a52470fb4a4b5cc7e9a3c8fd59e8d257396a8ff0bfdff81177bc24aaa3b22ba20b27b7bcf31eb71d8b428edfe0f
DIST genpatches-6.8-10.extras.tar.xz 3704 BLAKE2B d836e79733083c5587dcb63d1fb3c30c7b91aee70660681b5fcfbdf90d4ba6fdca09dcbdab29588d267e07ffa8b338223e9590539356fa862e8fa211827d6f9f SHA512 bb01fb545a182d3073590939b172755b1883e827b6687870f889634ac00949308fd62e0d870e6d6d18d8c517dfbeafd3252f9b61d589522cf5c9d09d534ec6a4
DIST genpatches-6.8-11.base.tar.xz 623140 BLAKE2B ab3aa16e717dc0ad99893ac73e6de6af38e83f09722088596cb0ed55d77a33c8f490c3ce81c0757933ff28bd068430adcceb99395c0a7b92c6713b89566d92a4 SHA512 19bd09eac56870b47f14373d648f839effe0e7e913cb7f61fb3c17e4f882768020c4069b72a7a384224116f5cd6b7a93b75b960a14d24c7e71fa1a083ab4c506
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.29.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.29.ebuild
new file mode 100644
index 000000000000..c7caf5904867
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.29.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##*.} + 7 ))
+# 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=g12
+
+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[@]}"
+}