sys-kernel/libre-kernel: add 5.15.94

This commit is contained in:
projectmoon 2023-03-07 23:15:12 +00:00
parent 7e312f93ff
commit f872aca016
2 changed files with 173 additions and 0 deletions

View File

@ -1,3 +1,5 @@
DIST genpatches-5.15-98.base.tar.xz 4003192 BLAKE2B 79d4fb60a5192137571109ffaefdfba23ac589102539cdde89046f627f39e65a52a44a83607232b499509b8bb4c341e2fd26ae971587c9574d4ac87d8b220893 SHA512 946a7638d19d5fd610075520e529a6c5a47aaa433b7986493f62571a7dc541278013a5006bf1e745496e4eb98de44af56f61d23679c139a719a8d5bc20c9e734
DIST genpatches-5.15-98.extras.tar.xz 3932 BLAKE2B 4e5dd4f8ba6d14764a6546cf7e64dffb3ddcc77678b7d96d2498917f30561792c904c635b0fce7191b7c0c65549fa769e89befffbea5e53a3cef64c673937c20 SHA512 337d95159432cba3b85511cf80c350a8a2f67c65b72a90b26ddc98c01d2d8de70d9b6067e0573c5c339a5bf64973d10c06b42001ee19a7add3d672e4577d0622
DIST genpatches-6.1-14.base.tar.xz 774040 BLAKE2B 8e0866c762e2711b766cc75630d66c7c46221bdc47357a903c7e8506ad122b7b5ba84d102b19743d236ac5579b44d24f77b9f52f3c23695ab6a279cf7875e735 SHA512 6a753146013baf0b94d83abd690118517679d4d7dcf6e9f86cf8de35e24f80a792e9c0692f237098671c316d046d6f65f8d3512255e572daf6a8ca81853beca0
DIST genpatches-6.1-14.extras.tar.xz 3804 BLAKE2B 7f016579b130c9a4f7a8ec946254dbd682f22e5654ae777d11b265dafe2b177a4c40c5a979a760a5bd6ed3dac057b90a3120c60b958f6b748ea4731b9a5f1ea6 SHA512 2807d359459dd11b9d3356fcac609dbfb8487e8c924cc543ef37698667b1c8b74cff7b015839ca0677cf1f96b566e0b5018c057b517275886ab500cd2ca49653
DIST gentoo-kernel-config-g1.tar.gz 4283 BLAKE2B 44dd51ec45ebc71bffcd6d85a2fefba053f7bce8035057f0bbe928e24816ad4ba03c9bf67dcfcd6d6d1833c0a2ea93e0fd486c2093664dc41ccce316e1e60588 SHA512 3a45f28df9d457df0fe0d185da8b10f4e35f49dad75075e041e8cf3cf6972fecc8145cd557b0bf3a8dea20ddffae0194f88e61c1e5098fa0a5ca301d40aeea2e
@ -15,5 +17,7 @@ DIST linux-libre-5.15.85-gnu.tar.xz 119691756 BLAKE2B 1f87b850883eac963ca81acfb4
DIST linux-libre-5.15.85-gnu.tar.xz.sign 195 BLAKE2B a125f7eb8373cc8c0d6737365c22b3a9b89374168024cac4942f782f78bbe7d9e997442ff9eb8dd6248f3c5fbcd1789a7bdb402d26fe840f0c33568882bdb23d SHA512 39b97fb8f76189559bcdbfdfefc34cfb55648a213013f373a4cf413be12e897e5a7db63341c40be1c0db65892a630eca36155302ce3fa97a7622093a20c69d07
DIST linux-libre-5.15.88-gnu.tar.xz 119731844 BLAKE2B 5f939758e98c1a47d96b728a5445f3eed65a8442d85a2c3da434b01eb063a2dfca6d32095cb9c65eebb29d9cda75f0d863a302ed1c5460f96962292dce1396cb SHA512 fbf8e8406c269d20baa0b1a97ceac8bbe8f240fcd9f2978957d9a560d420f2890de307b1d5fb628f34123f53643a04c6a486f4054ca50fd1014d6f050c11a06d
DIST linux-libre-5.15.88-gnu.tar.xz.sign 195 BLAKE2B dfbe0feee9e4e84bc45994b232a74859b3e764e41a0d10b097fc201534d3c1fe04b4746576eaa7bb2d7828ab8850ac915bb6f3186689e4474ec7fe639aea06ce SHA512 8d59ac0dc76b739acb7bb855addc11b3d02af7eb22c51f2672986af8d39ac18bdbce47a2b8a8f71827985f17f002e3b0ba152de8d1d84520fa4ea72427e216bb
DIST linux-libre-5.15.94-gnu.tar.xz 119739516 BLAKE2B 6d7c7d624991b79a021a5aa8c3c7b829b218ce9cb146f3f508f9fe97c3d738e9c1f02e38ea5928d02a8812f294335b81a2b03ff70039b641554dbfa4569ef7d1 SHA512 02c21e2cf83bf90b2c086ba92407a80be17468f55b7e7877dbd6eb89d90d100dfdb7bfea8776f5738a1335953aeba67dc581383674c1a28f4f6c458b27f652d6
DIST linux-libre-5.15.94-gnu.tar.xz.sign 195 BLAKE2B 84e3688cb26f529785a02a9104aa9f6dd059ff266e550340f09c7c4b916fedfbd63b80c4f634ab97c2ee6b88f864cf0a022d61eb2d30cf9b9201daee65ad5bca SHA512 35282cf99ffef053a1b05126371f70d0b24c16c95e579111f4118e4b2b1c72cbabd1393d2b8d092b62517f7c1c05ab997c2ec51ad0159701d03e715c190095c2
DIST linux-libre-6.1.12-gnu.tar.xz 127116060 BLAKE2B 2d8f457e23d954a1d2bd1c312369ca2ab6fa2c03b1758e78c82d5cc40eec8c5c3b5cb79c6fb168dca44a4ea6837801bb47a91e6b4b437ab6087adbb1b38914d1 SHA512 27c8f3e12e5f95681ef17f8fc698b7a319c69c734154c62437e43f997565f7f0fb3ccce9dd114bc23ccaa4580833a201d45ea744d568bf473b8ef76f6f91c988
DIST linux-libre-6.1.12-gnu.tar.xz.sign 195 BLAKE2B 769d8c66fda4fc3da616d9ed44c37ee110c0d28dbbeed64a9b724da468ac296edc131b104eaab294798313388d6f6ce4338bd8b1f14f03e900f2f817a0fa2a53 SHA512 6b77ef90f6b3c3da21542125c2ca96c79613a16dd7edf8d855d4aa3d7e601084111a1751dceec60f6337119f016dfef19f2c81e66cdd657e69583a5c60d1d64f

View File

@ -0,0 +1,169 @@
# Copyright 2020-2023 Gentoo Authors, projectmoon
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit kernel-build verify-sig
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
RESTRICT="mirror"
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 4 ))
CONFIG_VER=5.15.19
CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01
GENTOO_CONFIG_VER=g6
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
SRC_URI+="
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.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
verify-sig? (
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
)
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}
)
"
# Workdir is named linux-PV.
MY_P=linux-${PV}
S=${WORKDIR}/${MY_P}
LICENSE="GPL-2"
KEYWORDS="amd64"
IUSE="debug +gentoo"
BDEPEND="
debug? ( dev-util/pahole )
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
"
PDEPEND="
>=virtual/dist-kernel-${PV}
"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
pkg_pretend() {
if has_version -d sys-kernel/linux-firmware[redistributable]; then
ewarn "sys-kernel/linux-firmware was found installed on your system,"
ewarn "but it is configured to install non-Free firmware files."
ewarn "The non-Free firmware files may be required for some hardware"
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
ewarn "To install only the Free firmware, set the -redistributable"
ewarn "USE flag on sys-kernel/linux-firmware."
if use initramfs; then
elog
elog "If you decide to change or remove linux-firmware later, you"
elog "can rebuild the initramfs via issuing a command equivalent to:"
elog
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
fi
else
if ! has_version -d sys-kernel/linux-firmware; then
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
ewarn "on your system. This package provides various firmware files that"
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
ewarn "to pause or abort the build process and install it before"
ewarn "resuming."
if use initramfs; then
elog
elog "If you decide to install linux-firmware later, you can rebuild"
elog "the initramfs via issuing a command equivalent to:"
elog
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
fi
fi
fi
}
src_unpack() {
if use verify-sig; then
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
verify-sig_verify_detached $FILE $SIGFILE
fi
default
}
src_prepare() {
local PATCHES
if use gentoo; then
PATCHES="
${WORKDIR}/1500_XATTR_USER_PREFIX.patch
${WORKDIR}/1510_fs-enable-link-security-restrictions-by-default.patch
${WORKDIR}/2000_BT-Check-key-sizes-only-if-Secure-Simple-Pairing-enabled.patch
${WORKDIR}/2900_tmp513-Fix-build-issue-by-selecting-CONFIG_REG.patch
${WORKDIR}/2920_sign-file-patch-for-libressl.patch
${WORKDIR}/2930_gcc-plugins-Reorg-gimple-incs-for-gcc-13.patch
${WORKDIR}/2940_gcc-plugins-drop-std-gnu-plus-plus-to-fix-GCC-13-build.patch
${WORKDIR}/3000_Support-printing-firmware-info.patch
${WORKDIR}/4567_distro-Gentoo-Kconfig.patch
"
else
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
fi
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
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || die 'could not remove EXTRAVERSION'
local myversion="-gnu-dist"
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
)
# 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[@]}"
}