sys-kernel/libre-kernel: Stabilize 5.15.75, add 5.19.17.

This commit is contained in:
projectmoon 2022-11-14 09:13:26 +01:00
parent dde3d1aac4
commit dbcb2d3881
3 changed files with 140 additions and 1 deletions

View File

@ -1,3 +1,4 @@
DIST gentoo-kernel-config-g1.tar.gz 4283 BLAKE2B 44dd51ec45ebc71bffcd6d85a2fefba053f7bce8035057f0bbe928e24816ad4ba03c9bf67dcfcd6d6d1833c0a2ea93e0fd486c2093664dc41ccce316e1e60588 SHA512 3a45f28df9d457df0fe0d185da8b10f4e35f49dad75075e041e8cf3cf6972fecc8145cd557b0bf3a8dea20ddffae0194f88e61c1e5098fa0a5ca301d40aeea2e
DIST kernel-x86_64-fedora.config.5.15.19 223286 BLAKE2B 239995703c01dcb6d179133dd115bc0a57872c07d7a08afaf4d92cf6d78f0c17b19487b5b399ac7fdde5d460fa7931628147817a569fef2c3a62951c96054bdf SHA512 9bee4aff7e5ef4ada57bee7496aaf47b8fdd5c936c4c9b580660d130db0678eaecdebdbcab0dfcaf5c17a71f6419069840db10f5886806b6fc810f8a3619554f
DIST linux-libre-5.15.75-gnu.tar.xz 119675216 BLAKE2B 7b5658c5516062eeba00fdd02e20c135b2d693a48b2d73afa98bd3f0e58be67213f722a2707c43db48db75d8f015ebd824b19b74c3b9193c00af8dd58f21ea23 SHA512 c5fbb755500692a12e859218b0e5a3c42336be073b234b543a865d30f95af0854634b9a7454fb15c08c3635cec44af7f5a24c54945345fb6bbafb0805fa808c8
DIST linux-libre-5.19.17-gnu.tar.xz 124362148 BLAKE2B d62685af7373f5eaeb45c3917fec5df6bec43742ded71e4fa91ac995b09a29bfbf50ffceb232749624497280b4ba3d092a84856f676ac8fe09924b1d6027c870 SHA512 a491a96d26fd88cc1fadc06fcb363b4a35f03b38bb62c8adbc6e0bf2fc136655978f19a438d83efedcaa1a8142f35c249a3e4c7256f1122c436d55ac4d1cf432

View File

@ -30,7 +30,7 @@ MY_P=linux-${PV}
S=${WORKDIR}/${MY_P}
LICENSE="GPL-2"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="debug"
BDEPEND="

View File

@ -0,0 +1,138 @@
# Copyright 2020-2022 Gentoo Authors, projectmoon
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit kernel-build
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
RESTRICT="mirror"
# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
CONFIG_VER=5.15.19
CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01
GENTOO_CONFIG_VER=g1
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
SRC_URI+="
https://linux-libre.fsfla.org/pub/linux-libre/releases/${BASE_VER}-gnu/linux-libre-${BASE_VER}-gnu.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://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/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"
BDEPEND="
debug? ( dev-util/pahole )
"
PDEPEND="
>=virtual/dist-kernel-${PV}
"
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() {
default
}
src_prepare() {
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[@]}"
}