summaryrefslogtreecommitdiff
path: root/sys-kernel/gentoo-kernel
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/gentoo-kernel')
-rw-r--r--sys-kernel/gentoo-kernel/Manifest8
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.12.4.ebuild144
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.6.64.ebuild144
3 files changed, 296 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest
index 564805a7dc28..232b38c15f32 100644
--- a/sys-kernel/gentoo-kernel/Manifest
+++ b/sys-kernel/gentoo-kernel/Manifest
@@ -18,12 +18,18 @@ DIST genpatches-6.12-2.extras.tar.xz 4060 BLAKE2B ce854b442562d86627eed172c94d67
DIST genpatches-6.12-5.base.tar.xz 331136 BLAKE2B 6af9e74cc62063482672566432da6173b605d67ed0555ca1486cc0ffde606d84446c40d832276a9ee2a6d2584aae4a8de22a186a2c5b68ced840135b87b37457 SHA512 4b6f205a9fef89118e408e492b179289338e9453563dc95746826f71f5c995d4b36ca14ff106ef5ed6112f5d8dcf6992c7e368ab8ad3fd682c9c0219956ff02e
DIST genpatches-6.12-5.experimental.tar.xz 78160 BLAKE2B d04df4de8991e23396474c717dcc9ae069bbe877c921589fd61e19d16ab38be7bbe416c44406a8b5aa501bedbab18f2874d218f1af0a5ca8c853ee666ee98172 SHA512 27296cacf0fe5dd4a71033955956023bdbc3c5d21d9ee61030845e978c28170a434fbc5554c2ffbe315983ccdb31feed1e5be6ce51ae439b6bf5c4433d8c1999
DIST genpatches-6.12-5.extras.tar.xz 4056 BLAKE2B a3e17cf0578b3cb3d5edb399e7030283c35cfb71357202de8b4ce28b0c21ffa5d5e777d6f6fa64f5791ecfac6a37cce3f7e1a926fc16bf75ebfe7029af9e4c03 SHA512 52dd7cb88876ad7a643eb39c7e86a3341438b3662b9821ee1f479aafd759962db247d7d746ae1ee63a4b803c28e8b7fd14e89efafe918327663df5029651c3ef
+DIST genpatches-6.12-6.base.tar.xz 365140 BLAKE2B bf281f8314de03b6ac24de430632999188ff1573f46f58cab999f92fbcf0c2e5fd14413892e5a961eb1ee8b64360a253e8cc26d24f8687b413ff9cc1df72a4c2 SHA512 ddca7ef8f67bdc182ccfeb6ed2e5fd08297287fcd5744285c549643a854c7d6148342a3ac1a13ad6cdd87c334acc5abc58a7f6e6a58f34db8ce9dca2b0802152
+DIST genpatches-6.12-6.experimental.tar.xz 78104 BLAKE2B 52c6578ce4e6d3618e30d8ec2032c7e7fb642b4eca551d5bf3cbd635c40d1f7fcc5e453c05ff4376ca0261892e73ccc534d74ad33b68e50eeb69486c9d0b8e36 SHA512 9e924b32bf695ef62c4009152633a188927702534e2825f66cc2bbd75ddf0bdb141c8a7dacea4e33b2fe259b1da70010ba3dbe4c44cbdd7164b1a37f6f70df36
+DIST genpatches-6.12-6.extras.tar.xz 4056 BLAKE2B 4d3a72ea884a1b6cc84034277d6cfb57f7cc3fd43e9d229b46707c07dcef1af73bbd61aa880805ca5746c3b470335ad48c10d55f442f3396f0aaaa9a7a23c73b SHA512 538ba6590f3f4ff9bcb44131393a95a677ee6c59b6ee67ad2519ff242fb182358cd217d5e0533e11225646ecc92e8efeb4688c332db70d35a977a8e3cb475787
DIST genpatches-6.6-70.base.tar.xz 3723176 BLAKE2B 19017743aaa0e1c717746592f253a14ca476eae1658742c6e487023ee5a670473fe582a814a1202f2aeefc78d7dd3dd249810d7665299f740fcfceb1c8c11f84 SHA512 dfaa2df7ceb9411e9e35fc9f4822f7d579c1106b49c57805d657ec14699764a54e10d93f717801db7e33698b1c01dbab489e7b9953b1ff23feacbdec5a99c95b
DIST genpatches-6.6-70.experimental.tar.xz 5760 BLAKE2B 819eec9931b944363d5da41bddcc17007f9825d6caa736e30869d175cceb138a87a2c22c2b17ebd070b583d69840d2b28597dbf80ce2835e1088cc6c7fa86660 SHA512 b6b1a58c549a1350e4b1479544db9658a8ad78f61dd3c486b909351c29e61d9d6fe97230f01437775d32711633cde4300be1b00bfa6dc9687e60b126427689da
DIST genpatches-6.6-70.extras.tar.xz 4060 BLAKE2B 65cc5e2a27894992dd78d6cbfe5601f2e10b21f6e588d8a8d75f1f265f1fdab3ab03dd4d5c18e3ac5f48a6a72f021e2f125c5140224b26f0caeba3def4054042 SHA512 728495f3fa06f52f0ececb3b5e69b1cd4c7aa29d8ca02bc7a537616a2c1cf81859b5f624e125332a1def8176f7a878da58843ef8d363a5d622009b31548879c6
DIST genpatches-6.6-71.base.tar.xz 3745848 BLAKE2B ab33221175b500bce645d302fb32095aa15a536ba475b866c41087d963e57a713579ddde608d93a5f2ea823e7126850599b49522c8c7112cf9435fd85897805f SHA512 eecd342f586e1b594009f91fa1ac12399d90a164dbdbdb454414eeca9bd47ce04a78e0ceee28f889324ccc505112f6a3bb4cc093f88ed10a4c521869769f4e07
DIST genpatches-6.6-71.experimental.tar.xz 5764 BLAKE2B 4cbf4c611acb9281bbc55ee5b7ff1efea0ec5a38b7fca982d2c95409677bbad72ca616fbe9e565adf3abec8c0ba82e8f7beb8440d55409e4f367bc5569da7669 SHA512 f923ca73f6d23ec8a2f4c04b6bd32b3fcba5979014a789689367eecf977ba3dddd0674a69db459aac639718837c6bebbcf6265fef364b4206943e97d03055de3
DIST genpatches-6.6-71.extras.tar.xz 4056 BLAKE2B def4ae87c4a1b9221a7f8a38cc1b5e66867f599dba38f57b2641690a80ece90851fe9e4484d85894c5d41500d736fc5564c30669becd582898db2b8d3da3dff4 SHA512 66225121d986d43ef542899b32845867f22a9165c2a6ea7d891f6d8d35bc9dd6f6a0aee82e945a1566cb4c523b9b821175921e436f7217c16acaa9a1685bc307
+DIST genpatches-6.6-72.base.tar.xz 3928624 BLAKE2B 65d75de6e47496de435004b9cc85f29517583accbe8b795774c3cc48a9886510b2032a8234da1ef02f28ba42573d3c2ab3aa60e2bfd2bf4a2ed0dff4366c804d SHA512 3432d58a63d5964f7c45b83d108825254bc7b2cc93dbd797f517d18bf3ac37b258503fb544781d8d8fe9ee6d335e7aad13eee5cad45cd68d45b11499d26f32db
+DIST genpatches-6.6-72.experimental.tar.xz 5768 BLAKE2B 7bdcf51be9777e331b2f44c709729e6fafa9ff9496c6a462af3dd9118358ad3a11452c3adb8786c18a350e704f699dc07738113bc2ae7254ce424511ec828f22 SHA512 381893b8c48db2d400a1ab42bace7e678cdcac082cb09ba2487496d445fb59110b905cb1a3e11e9a7bdb7efecccb6043ac4ff242de583c40a09031c6e5cada93
+DIST genpatches-6.6-72.extras.tar.xz 4056 BLAKE2B 5c3a9d0cc988a15fb2ea4cc3edc0d807d7523814226cd22cdad3d82b7a67138cc860445006d32d34667ae5441201adbc28e250b4c9fdfb6340129e5a23aa13a9 SHA512 6712bf418245ecedd113c451b795be17c6886f3c081ab9204124faac97703c7d4aacb02c7b8a9d68b5d981cb280dfeffc0a168c576c68b3bc4f65ca9cba4702e
DIST gentoo-kernel-config-g14.tar.gz 5686 BLAKE2B e5147ff4ffab92428b3e7f1b0897b997f8a298805f4f43b0a4d3047607bbb1a5ebfc268e0bb9688372a5eda561df9f256c78e00cdd7e3caf7868724214722f56 SHA512 f79638f9ff9dd0154512baf0234024216b6708d35a3c03a580ca5913286ad1ea13bdde5ea9b4722c6a7cd8d591c11ec52c1e225111a260343cd56aa1f1a88502
DIST kernel-aarch64-fedora.config.5.10.12 223184 BLAKE2B a0246dac2f7a4ad6a55b611538d24382ac87a8960077811a859c9595ac67f961b4bccb7e139a89abc7c0e26e80832da5c94211fc658082f2e7dde984f14dd29d SHA512 7d803b347b136331db1ad6e22e0445fe0224c3e26cd7c034cbe9794915d457b492e05f77664865079874ec001351553652646e2e08d0fee31e30b841b0008f52
DIST kernel-aarch64-fedora.config.6.1.102-gentoo 252811 BLAKE2B f6bad0d23132bf0dfbaa25db928a95f39763b6500fd1df9b4aeca4351e3e75f185891c0df96b111ad840e4bac431d74a9b11e7344e766ab49715663c89e4dbfc SHA512 41ebf195d8b656801d49c6bb693ebe1404b6725d70d88d93a75bc4af230030d65ef0701ea931846b022a3c598dcca068fbc38ecf6d064262b3f5b88e57060437
@@ -59,6 +65,8 @@ EBUILD gentoo-kernel-6.11.10.ebuild 4187 BLAKE2B 683e9f023de69630f12186054127c49
EBUILD gentoo-kernel-6.11.11.ebuild 4187 BLAKE2B 683e9f023de69630f12186054127c49597f295876a6bdb88413d86f62a0f38683a9806cd997cbf4f5aad27e7f8229cf599d07f965a3ae543f918e9113a1f1697 SHA512 e87ba074be06c3d30d47563de9898f70fbc30cb6e9a450976dfddb45ac7260108de9b98d1d69b10d70379606969710dac1d7f5ab66714220acc734b91802b054
EBUILD gentoo-kernel-6.12.1.ebuild 4187 BLAKE2B c14e3890bbbcb9eaa1182d7accf1fc0f5851f477d09de0706862393f9c2ac67807ca79af0b9b3b6a67dfe6e1412cac5cdc6161607803f0ee1fc71c582c0e4ef6 SHA512 08d9fbd51e58127a0a8cdf8ef543ccd0d5a4b3a71c492fbb66b089520ea12a95ef4251d8e32ded60ab99a68cac40446b4004cb0f95173da7fdfe090c067bf5d5
EBUILD gentoo-kernel-6.12.3.ebuild 4187 BLAKE2B aacf585b9c2826101810945e3b89ba409afe90fb35ece9daee859e5360c3f18f66676e4792b1e2000226a30a878018de2a4c546d7e7a716297f4d917bdf181b2 SHA512 cbd1fd0b34d3ac1dbc0a75c003065ff2d5ee982295b1f6203c9ee1fdaafba3d08118689da7b7d8d745dd3c9d3cbc849c526b261a6558ff78f20c0ad4b81cf2b1
+EBUILD gentoo-kernel-6.12.4.ebuild 4187 BLAKE2B aacf585b9c2826101810945e3b89ba409afe90fb35ece9daee859e5360c3f18f66676e4792b1e2000226a30a878018de2a4c546d7e7a716297f4d917bdf181b2 SHA512 cbd1fd0b34d3ac1dbc0a75c003065ff2d5ee982295b1f6203c9ee1fdaafba3d08118689da7b7d8d745dd3c9d3cbc849c526b261a6558ff78f20c0ad4b81cf2b1
EBUILD gentoo-kernel-6.6.62.ebuild 4183 BLAKE2B 0598a06064bd5c90bea8d3eea31933a15ad4a749d3e3648ddb29a6024c12bed813854e3447cb6a82067d917a3c777b6dd5ce22d97581e6b24bb4854883f0b143 SHA512 ff4ff9dbf3854ff063ce7b47d1534036828c200264864f0e32d587c40c6ef67d132983c8a0a269c45016a560e0a0fec5bf95b20f7228d41a6f985da3aea2d8bc
EBUILD gentoo-kernel-6.6.63.ebuild 4187 BLAKE2B 3c01463be2bbf082983d3a7d7c4f5cf98b0824b5f0b077874a4e78b4193b81b497414e800e51f747095a87f3a6ae5f818ccfb972d8bc58a2b6565f287294df9d SHA512 beda23b415caa04be906399091d675881247f86d57bab888800649bfd040c4b93f4fc9c930dd511f5c66fedb58580cb4d17f9accccf7af7927fae763a0379fc8
+EBUILD gentoo-kernel-6.6.64.ebuild 4187 BLAKE2B 3c01463be2bbf082983d3a7d7c4f5cf98b0824b5f0b077874a4e78b4193b81b497414e800e51f747095a87f3a6ae5f818ccfb972d8bc58a2b6565f287294df9d SHA512 beda23b415caa04be906399091d675881247f86d57bab888800649bfd040c4b93f4fc9c930dd511f5c66fedb58580cb4d17f9accccf7af7927fae763a0379fc8
MISC metadata.xml 837 BLAKE2B 4a479438c85425dc4b1450f546cda4cb516284062391554a7944b56e11643c96dfcfdf354670b8e733ef3c1e86f6e47cee7e37445fed688123185c5e970a6669 SHA512 fc8982b0c939c006971bdaea1d91a13d232d41aa62451db5a07ebe55e5b87de548d40dd1d953f60fab8fd7567f56c8c918db76d34cd3c6239c6e0b545a539f94
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.4.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.4.ebuild
new file mode 100644
index 000000000000..1d4087944e1a
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.4.ebuild
@@ -0,0 +1,144 @@
+# 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##*.} + 2 ))
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo
+CONFIG_VER=6.12.1-gentoo
+GENTOO_CONFIG_VER=g14
+
+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
+ experimental? (
+ https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.experimental.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 experimental 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
+ arm | hppa | loong | riscv | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
+ ;;
+ arm64)
+ cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
+ biendian=true
+ ;;
+ 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
+
+ use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.64.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.64.ebuild
new file mode 100644
index 000000000000..b94f0d5ca83d
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.64.ebuild
@@ -0,0 +1,144 @@
+# 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##*.} + 8 ))
+# 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=g14
+
+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
+ experimental? (
+ https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.experimental.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 experimental 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
+ arm | hppa | loong | riscv | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
+ ;;
+ arm64)
+ cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
+ biendian=true
+ ;;
+ 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
+
+ use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}