From 397a76a3fedf6dcf2e22ab8dade0799a22c0d0cc Mon Sep 17 00:00:00 2001 From: Tasos Sahanidis Date: Wed, 6 Mar 2024 17:16:15 +0200 Subject: core/linux-lts: Update patching and disable BTF --- core/linux-lts/PKGBUILD | 102 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 92 insertions(+), 10 deletions(-) (limited to 'core/linux-lts/PKGBUILD') diff --git a/core/linux-lts/PKGBUILD b/core/linux-lts/PKGBUILD index 7d6acb42..7dc420c2 100644 --- a/core/linux-lts/PKGBUILD +++ b/core/linux-lts/PKGBUILD @@ -1,18 +1,38 @@ -# upstream git revision: 5b5e6ab5ccc29af668f41d05ec1fb8e9f8f99595 +# upstream git revision: d70c1e882bf3a02e734ec7f29f911ebb42912b8a + +source+=('config.x86_64') +sha256sums+=('e55887ed31b343841ff8c3d4cd494c5d5d4e554eba2b57f1d0295adfc8a7362e') +b2sums+=('bfd6c873c36560e1259f4940bb64f5af5db4b14c4e8597ce46b99c1705e32c96289ac2927c1a68fa96f0e1c83491061e123a4b219d6c0a3bca2a8965ff92c4fd') +source_pentium4=('config.pentium4') +source_i686=('config.i686') +source_i486=('config.i486') # fail if upstream's .config changes -for ((i=0; i<${#sha256sums[@]}; i++)); do - if [ "${sha256sums[${i}]}" = '26b55bd9f0704615c15a994fdd61f0df8c99d26f9ee97f605155df4d070eba34' ]; then - sha256sums[${i}]='71cc7b4c2cfff5ea941c5868cd3fab84f7e8cf98bf5f06e83bb44b4afad0e4f0' - b2sums[${i}]='e090b028752ae88a3107f96436ff8509126163bdf00e6b7f9d98faa2012aa791c922543d36dcd4e9f6a8c3e0f884e0dfd762905d7343397b54920b3861b61a1b' +for ((i=0; i<${#b2sums[@]}; i++)); do + if [ "${b2sums[${i}]}" = 'bfd6c873c36560e1259f4940bb64f5af5db4b14c4e8597ce46b99c1705e32c96289ac2927c1a68fa96f0e1c83491061e123a4b219d6c0a3bca2a8965ff92c4fd' ]; then + b2sums_pentium4=('c2fa0bef869355e68553944d0a33e6089d752fef862262633e24c9349147496c9c1a20e0d1790341e716ab86ae6e9f6863841baf773e8511c0d7351c73897642') + b2sums_i686=('c2fa0bef869355e68553944d0a33e6089d752fef862262633e24c9349147496c9c1a20e0d1790341e716ab86ae6e9f6863841baf773e8511c0d7351c73897642') + b2sums_i486=('c2fa0bef869355e68553944d0a33e6089d752fef862262633e24c9349147496c9c1a20e0d1790341e716ab86ae6e9f6863841baf773e8511c0d7351c73897642') fi done +# copy architecture specific config file, not default 'config' eval "$( - declare -f package_linux-lts-headers | \ + declare -f prepare | \ + sed ' + s,\.\./config,../config.$CARCH, + ' +)" + +# patch architecture when copying the kernel Makefile +eval "$( + declare -f package_linux-headers | \ sed ' \,/tools/objtool" ,d - \,arch/x86/Makefile,a install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile_32.cpu + \,arch/x86/Makefile, { + a \ + install -t "${builddir}/arch/x86" -m644 arch/x86/Makefile_32.cpu + } $ i depends+=(gcc-libs=$(_get_gcc_version_from_config)) ' )" @@ -36,11 +56,73 @@ _get_gcc_version_from_config() { fi } +# use our tarballer instead of cloning from git +for ((i=0; i<${#source[@]}; i++)); do + infos=$( + printf '%s\n' "${source[${i}]}" | \ + sed ' + s@^\(\([^:]\+\)::\)\?\(git\|hg\)+\([^#?]\+\)\(?signed\)\?#\(\(tag\|commit\)=[^?]\+\)$@\3 \2 \4 \5 \6@ + t + s@^\(\([^:]\+\)::\)\?\(git\|hg\)+\([^#?]\+\)#\(\(tag\|commit\)=[^?]\+\)\(?signed\)\?$@\3 \2 \4 \7 \5@ + t + d + ' + ) + if [ -n "${infos}" ]; then + source[${i}]=$( + type="${infos%% *}" + infos="${infos#* }" + if [ -n "${infos%% *}" ]; then + prefix="${infos%% *}" + else + prefix='' + fi + infos="${infos#* }" + repo="${infos%% *}" + repo64=$( + printf '%s' "${repo}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + infos="${infos#* }" + if [ "${infos%% *}" = '?signed' ]; then + key_check=$( + printf '&valid_keys=' + printf '%s,' "${validpgpkeys[@]}" | \ + sed 's/,$//' + ) + else + key_check='' + fi + infos="${infos#* }" + if [ -z "${prefix}" ]; then + prefix="${repo%.git}" + prefix="${prefix##*/}" + fi + prefix_64=$( + printf '%s/' "${prefix}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + + printf '%s-%s.tar.gz::https://archive-server.archlinux32.org/?t=%s&p=%s&r=%s%s&%s\n' \ + "${prefix}" \ + "${pkgver}" \ + "${type}" \ + "${prefix_64}" \ + "${repo64}" \ + "${key_check}" \ + "${infos}" + ) + fi +done + +# upstream prepare() does already do the *.patch patching + # avoid using zstd compression in ultra mode (exhausts virtual memory) source+=('no-ultra-zstd.patch') -sha256sums+=('a044d2ed2ac13f0435e94e567f6fd5d8380b694f74e344857ca64ef0c9424a07') -b2sums+=('e7915714b504b92155c983a30df6d97966c14520dc9eb004671003dbdecf454b061138a6d237cabe86be32ae2ea4c598cdb821cb1dd52f6a9bfe5e280bffa321') -# upstream prepare() does already do the *.patch patching +sha256sums+=('d32270be5fd9c3e3ba50f3aef33f6cfcb85be0c8216f03b777287cc621fdff28') +b2sums+=('165ab9dd8cedeaae5327accc1581c19cf0be55f923b03feb889cad3351b74c7c4cd3d3c206938e5152bfe1d947513dea8f630f8f5544099ec13d16d254725c40') # temporarily disabled documentation due to sphinx_rtd_theme (FS32#163) pkgname=( -- cgit v1.2.3-54-g00ecf