toolchain rebuild with glibc 2.37

This commit is contained in:
joborun linux 2023-02-07 14:20:07 +02:00
parent bb044b40a9
commit 6ce208c2a7
24 changed files with 284 additions and 90 deletions

View File

@ -7,10 +7,8 @@
pkgname=binutils
pkgver=2.40
#_commit=78eca0130feecb321bb6943045b2161583f61dd2
#pkgrel=01
_commit=bcea253f5fa194e57f9564e8461c718e228bd26e
pkgrel=02
_commit=65dbb94214516c915df5e0fe554ea165557e7ec7
pkgrel=04
pkgdesc='A set of programs to assemble and manipulate binary and object files'
arch=(x86_64)
#url='https://www.gnu.org/software/binutils'
@ -30,7 +28,7 @@ source=(git+https://sourceware.org/git/binutils-gdb.git#commit=${_commit}
gold-warn-unsupported.patch)
prepare() {
[[ ! -d binutils-gdb ]] && ln -s binutils-$pkgver binutils-gdb
[[ ! -d binutils-gdb ]] && ln -s binutils-${pkgver} binutils-gdb
mkdir -p binutils-build
cd binutils-gdb
@ -48,7 +46,7 @@ prepare() {
build() {
cd binutils-build
"$srcdir/binutils-gdb/configure" \
"${srcdir}"/binutils-gdb/configure \
--prefix=/usr \
--sysconfdir="${pkgdir}"/etc \
--with-lib-path=/usr/lib:/usr/local/lib \
@ -105,19 +103,27 @@ check() {
package() {
cd binutils-build
make prefix="$pkgdir/usr" tooldir="$pkgdir/usr" install
make prefix="${pkgdir}"/usr tooldir="${pkgdir}"/usr install
# install PIC version of libiberty
install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib"
install -m644 libiberty/pic/libiberty.a "${pkgdir}"/usr/lib
# Remove unwanted files
rm -f "$pkgdir"/usr/share/man/man1/{dlltool,windres,windmc}*
rm -f "${pkgdir}"/usr/share/man/man1/{dlltool,windres,windmc}*
# No shared linking to these files outside binutils
rm -f "$pkgdir"/usr/lib/lib{bfd,opcodes}.so
echo 'INPUT( /usr/lib/libbfd.a -lsframe -liberty -lz -lzstd -ldl )' > "$pkgdir/usr/lib/libbfd.so"
# echo 'INPUT( /usr/lib/libbfd.a -liberty -lz -ldl )' > "$pkgdir/usr/lib/libbfd.so"
echo 'INPUT( /usr/lib/libopcodes.a -lbfd )' > "$pkgdir/usr/lib/libopcodes.so"
rm -f "${pkgdir}"/usr/lib/lib{bfd,opcodes}.so
tee "${pkgdir}"/usr/lib/libbfd.so << EOS
/* GNU ld script */
INPUT( /usr/lib/libbfd.a -lsframe -liberty -lz -lzstd -ldl )
EOS
tee "${pkgdir}"/usr/lib/libopcodes.so << EOS
/* GNU ld script */
INPUT( /usr/lib/libopcodes.a -lbfd )
EOS
# install FSF All Permissive License
install -Dm644 -t "${pkgdir}"/usr/share/licenses/${pkgname}/ FSFAP
@ -132,6 +138,6 @@ validpgpkeys=(3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F)
sha256sums=(SKIP
2d430b66f84a19c154725ec535280c493be1d34f1a90f95208dce02fecd0e4e4) # gold-warn-unsupported.patch
## b0c2f7afb0b79f22d8ddbca27c65d5442ff1653d64639dd3bf6e7445e8b1fcb9 binutils-2.40-04-x86_64.pkg.tar.lz
## daebab19a8aa374df721ec28ba88e48ec6e43099e49318b9fd352588e2546876 binutils-2.40-02-x86_64.pkg.tar.xz

View File

@ -7,8 +7,8 @@
pkgname=binutils
pkgver=2.40
_commit=bcea253f5fa194e57f9564e8461c718e228bd26e
pkgrel=2
_commit=65dbb94214516c915df5e0fe554ea165557e7ec7
pkgrel=4
pkgdesc='A set of programs to assemble and manipulate binary and object files'
arch=(x86_64)
url='https://www.gnu.org/software/binutils/'
@ -29,7 +29,7 @@ sha256sums=('SKIP'
validpgpkeys=(3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F)
prepare() {
[[ ! -d binutils-gdb ]] && ln -s binutils-$pkgver binutils-gdb
[[ ! -d binutils-gdb ]] && ln -s binutils-${pkgver} binutils-gdb
mkdir -p binutils-build
cd binutils-gdb
@ -47,7 +47,7 @@ prepare() {
build() {
cd binutils-build
"$srcdir/binutils-gdb/configure" \
"${srcdir}"/binutils-gdb/configure \
--prefix=/usr \
--sysconfdir="${pkgdir}"/etc \
--with-lib-path=/usr/lib:/usr/local/lib \
@ -100,18 +100,27 @@ check() {
package() {
cd binutils-build
make prefix="$pkgdir/usr" tooldir="$pkgdir/usr" install
make prefix="${pkgdir}"/usr tooldir="${pkgdir}"/usr install
# install PIC version of libiberty
install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib"
install -m644 libiberty/pic/libiberty.a "${pkgdir}"/usr/lib
# Remove unwanted files
rm -f "$pkgdir"/usr/share/man/man1/{dlltool,windres,windmc}*
rm -f "${pkgdir}"/usr/share/man/man1/{dlltool,windres,windmc}*
# No shared linking to these files outside binutils
rm -f "$pkgdir"/usr/lib/lib{bfd,opcodes}.so
echo 'INPUT( /usr/lib/libbfd.a -lsframe -liberty -lz -lzstd -ldl )' > "$pkgdir/usr/lib/libbfd.so"
echo 'INPUT( /usr/lib/libopcodes.a -lbfd )' > "$pkgdir/usr/lib/libopcodes.so"
rm -f "${pkgdir}"/usr/lib/lib{bfd,opcodes}.so
tee "${pkgdir}"/usr/lib/libbfd.so << EOS
/* GNU ld script */
INPUT( /usr/lib/libbfd.a -lsframe -liberty -lz -lzstd -ldl )
EOS
tee "${pkgdir}"/usr/lib/libopcodes.so << EOS
/* GNU ld script */
INPUT( /usr/lib/libopcodes.a -lbfd )
EOS
# install FSF All Permissive License
install -Dm644 -t "${pkgdir}"/usr/share/licenses/${pkgname}/ FSFAP

View File

@ -11,3 +11,17 @@ real 46m9.228s
user 50m19.184s
sys 3m1.937s
binutils 2.40.3 (Thu 05 Feb 2023)
real 30m19.276s
user 41m9.045s
sys 2m27.873s
binutils 2.40-04 (Mon 06 Feb 2023)
real 30m24.846s
user 41m27.317s
sys 2m29.602s

View File

@ -8,7 +8,7 @@
pkgbase=elfutils
pkgname=(debuginfod elfutils libelf)
pkgver=0.188
pkgrel=02
pkgrel=03
pkgdesc="Handle ELF object files and DWARF debugging information"
arch=(x86_64)
url="https://sourceware.org/elfutils/"
@ -147,8 +147,8 @@ sha256sums=(fb8b0e8d0802005b9a309c60c1d8de32dd2951b56f0c3a3cb56d21ce01595dff #
f687c7adc1d3ec1e7315388bf8b018fdd8c461232488667edb40d3094192f11a # elfutils-0.188.tar.bz2.sig
e2bc8e32401c7e325c294c45eee85bdf3a676a9d7f4676ab5620202f36b8ed17) # curl_7.85_compat.patch
# dcda61b1364a01248aeb10c6b94e502d0c066dff97e936e8b9a3e351b4f8bfad debuginfod-0.188-03-x86_64.pkg.tar.lz
# 1fae6f936f1510934e642dfc73b04c994e0f63b1878dcadf5d2dfb7ad368ef71 elfutils-0.188-03-x86_64.pkg.tar.lz
# 5c13402a21e1d7456e4a14c4fffa4807dc8492fd8520442f771cbe5270380e3b libelf-0.188-03-x86_64.pkg.tar.lz
#93b40c6b65d7e4522a800914c77c625cf5534b56077bb7a40c569bc61453a391 debuginfod-0.188-02-x86_64.pkg.tar.xz
#6895eeeea87531f6406c5e3462b5d7dbe4bd97c39a0b42f4b2d169bb0f948794 elfutils-0.188-02-x86_64.pkg.tar.xz
#c5021767b4203fc6fba9d1e23cc8f0a091d48f4c53f892eb30f87d72a26aa75e libelf-0.188-02-x86_64.pkg.tar.xz

View File

@ -6,7 +6,7 @@
pkgbase=elfutils
pkgname=(debuginfod elfutils libelf)
pkgver=0.188
pkgrel=2
pkgrel=3
pkgdesc="Handle ELF object files and DWARF debugging information"
arch=(x86_64)
url="https://sourceware.org/elfutils/"

View File

@ -15,8 +15,8 @@
pkgname=(gcc gcc-libs lib32-gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go gcc-d lto-dump libgccjit)
pkgver=12.2.1
_majorver=${pkgver%%.*}
_commit=eec3a65ed638a1c58fa08ddf508d2d60b64d311d
pkgrel=01
_commit=fb2d50f72caf3b84b315bc760368670680999749
pkgrel=02
pkgdesc='The GNU Compiler Collection'
arch=(x86_64)
url='https://gcc.gnu.org'
@ -30,7 +30,6 @@ makedepends=(
lib32-gcc-libs
libisl
libmpc
libxcrypt
python
zstd
)

View File

@ -10,8 +10,8 @@
pkgname=(gcc gcc-libs lib32-gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go gcc-d lto-dump libgccjit)
pkgver=12.2.1
_majorver=${pkgver%%.*}
_commit=eec3a65ed638a1c58fa08ddf508d2d60b64d311d
pkgrel=1
_commit=fb2d50f72caf3b84b315bc760368670680999749
pkgrel=2
pkgdesc='The GNU Compiler Collection'
arch=(x86_64)
license=(GPL3 LGPL FDL custom)
@ -26,7 +26,6 @@ makedepends=(
lib32-gcc-libs
libisl
libmpc
libxcrypt
python
zstd
)

View File

@ -43,4 +43,9 @@ user 816m48.195s
sys 21m56.182s
gcc 12.2.1-02 (Mon 06 Feb 2023)
real 458m31.331s
user 789m28.638s
sys 20m6.279s

View File

@ -10,9 +10,9 @@
pkgbase=glibc
pkgname=(glibc lib32-glibc)
pkgver=2.36
_commit=93967a2a7bbdcedb73e0b246713580c7c84d001e
pkgrel=07
pkgver=2.37
_commit=a704fd9a133bfb10510e18702f48a6a9c88dbbd5
pkgrel=02
arch=(x86_64)
url='https://www.gnu.org/software/libc'
makedepends=(git gd lib32-gcc-libs python)
@ -26,6 +26,7 @@ source=(git+https://sourceware.org/git/glibc.git#commit=${_commit}
sdt.h sdt-config.h
# disable-clone3.diff
reenable_DT_HASH.patch
cve-2023-25139.patch
)
prepare() {
@ -34,10 +35,15 @@ prepare() {
[[ -d glibc-$pkgver ]] && ln -s glibc-$pkgver glibc
cd glibc
# re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC
# Re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC
# which relies on DT_HASH to be present in these libs.
# reconsider 2023-01
patch -Np1 -i "${srcdir}"/reenable_DT_HASH.patch
# Add a temporary patch for cve 2023-25139 until a fix has been backported.
# Technical the fix itself is complete but the test cases aren't.
# See https://sourceware.org/bugzilla/show_bug.cgi?id=30068
patch -Np1 -i "${srcdir}"/cve-2023-25139.patch
}
build() {
@ -227,14 +233,14 @@ validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # Carlos O'Donell
BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar
sha256sums=(SKIP
2a7dd6c906b6c54a68f48a21898664a32fdb136cbd9ff7bfd48f01d1aaa649ae # locale.gen.txt
8c5cc09018cbd65e8570430f872e118caa2644e311d6200b7d5f0cba837fbba4 # locale-gen
c27424154a6096ae32c0824b785e05de6acef33d9224fd6147d1936be9b4962b # lib32-glibc.conf
774061aff612a377714a509918a9e0e0aafce708b87d2d7e06b1bd1f6542fe70 # sdt.h
cdc234959c6fdb43f000d3bb7d1080b0103f4080f5e67bcfe8ae1aaf477812f0 # sdt-config.h
bb2fc5a38158d339a51a4aaab3fe2d5cc496221f77cfce6f74768db91cb5ec1e) # reenable_DT_HASH.patch
2a7dd6c906b6c54a68f48a21898664a32fdb136cbd9ff7bfd48f01d1aaa649ae # locale.gen.txt
8c5cc09018cbd65e8570430f872e118caa2644e311d6200b7d5f0cba837fbba4 # locale-gen
c27424154a6096ae32c0824b785e05de6acef33d9224fd6147d1936be9b4962b # lib32-glibc.conf
774061aff612a377714a509918a9e0e0aafce708b87d2d7e06b1bd1f6542fe70 # sdt.h
cdc234959c6fdb43f000d3bb7d1080b0103f4080f5e67bcfe8ae1aaf477812f0 # sdt-config.h
bb2fc5a38158d339a51a4aaab3fe2d5cc496221f77cfce6f74768db91cb5ec1e # reenable_DT_HASH.patch
9627dc07059c808c410ccd386c3b2bfeeafc9de7660b847dd971d3133b57be78) # cve-2023-25139.patch
# aa7f6a3a2a3234136236a26219ad436f2bb341a77b71bfe8b2ba6b6d2adbb013 glibc-2.36-07-x86_64.pkg.tar.xz
# 53b49e099b646f9d1d4df9a55790e062a4128e88b557c0d10fd407fd02b75af3 lib32-glibc-2.36-07-x86_64.pkg.tar.xz
# ab3108a40447fc04bcaaace551c423d0929c05ad59c93026e92bcc4e68a793cc glibc-2.37-01-x86_64.pkg.tar.lz
# 4337f399d769d852a8046b267ba5940ad2442f63762d7ecde6ac0c90d5115613 lib32-glibc-2.37-01-x86_64.pkg.tar.lz

View File

@ -8,9 +8,9 @@
pkgbase=glibc
pkgname=(glibc lib32-glibc)
pkgver=2.36
_commit=93967a2a7bbdcedb73e0b246713580c7c84d001e
pkgrel=7
pkgver=2.37
_commit=a704fd9a133bfb10510e18702f48a6a9c88dbbd5
pkgrel=2
arch=(x86_64)
url='https://www.gnu.org/software/libc'
license=(GPL LGPL)
@ -22,6 +22,7 @@ source=(git+https://sourceware.org/git/glibc.git#commit=${_commit}
lib32-glibc.conf
sdt.h sdt-config.h
reenable_DT_HASH.patch
cve-2023-25139.patch
)
validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # Carlos O'Donell
BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar
@ -31,7 +32,8 @@ b2sums=('SKIP'
'7c265e6d36a5c0dff127093580827d15519b6c7205c2e1300e82f0fb5b9dd00b6accb40c56581f18179c4fbbc95bd2bf1b900ace867a83accde0969f7b609f8a'
'a6a5e2f2a627cc0d13d11a82458cfd0aa75ec1c5a3c7647e5d5a3bb1d4c0770887a3909bfda1236803d5bc9801bfd6251e13483e9adf797e4725332cd0d91a0e'
'214e995e84b342fe7b2a7704ce011b7c7fc74c2971f98eeb3b4e677b99c860addc0a7d91b8dc0f0b8be7537782ee331999e02ba48f4ccc1c331b60f27d715678'
'5fdd133c367af2f5454ea1eea7907de12166fb95eb59dbe33eae16aa9e26209b6585972bc1c80e36a0af4bfb04296acaf940ee78cd624cdcbab9669dff46c051')
'5fdd133c367af2f5454ea1eea7907de12166fb95eb59dbe33eae16aa9e26209b6585972bc1c80e36a0af4bfb04296acaf940ee78cd624cdcbab9669dff46c051'
'917b876dbc2bc23d15ffedb56bfb51611f8c7a5b8321281a2cf488d442a45c38fc754e857573843042bf7cc3df87d4271bc723acd52aab4c8fc3c8f07d41456e')
prepare() {
mkdir -p glibc-build lib32-glibc-build
@ -39,10 +41,15 @@ prepare() {
[[ -d glibc-$pkgver ]] && ln -s glibc-$pkgver glibc
cd glibc
# re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC
# Re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC
# which relies on DT_HASH to be present in these libs.
# reconsider 2023-01
patch -Np1 -i "${srcdir}"/reenable_DT_HASH.patch
# Add a temporary patch for cve 2023-25139 until a fix has been backported.
# Technical the fix itself is complete but the test cases aren't.
# See https://sourceware.org/bugzilla/show_bug.cgi?id=30068
patch -Np1 -i "${srcdir}"/cve-2023-25139.patch
}
build() {

View File

@ -0,0 +1,81 @@
This is a partial fix for mishandling of grouping when formatting
integers. It properly computes the width in presence of grouping
characteres when the precision is larger than the number of significant
digits.
---
stdio-common/Makefile | 1 +
stdio-common/tst-grouping3.c | 37 +++++++++++++++++++++++++++++
stdio-common/vfprintf-process-arg.c | 2 +-
3 files changed, 39 insertions(+), 1 deletion(-)
create mode 100644 stdio-common/tst-grouping3.c
diff --git a/stdio-common/Makefile b/stdio-common/Makefile
index 6e9d104524..b46d932a20 100644
--- a/stdio-common/Makefile
+++ b/stdio-common/Makefile
@@ -195,6 +195,7 @@ tests := \
tst-gets \
tst-grouping \
tst-grouping2 \
+ tst-grouping3 \
tst-long-dbl-fphex \
tst-memstream-string \
tst-obprintf \
diff --git a/stdio-common/tst-grouping3.c b/stdio-common/tst-grouping3.c
new file mode 100644
index 0000000000..0031ad4010
--- /dev/null
+++ b/stdio-common/tst-grouping3.c
@@ -0,0 +1,37 @@
+/* Test printf with grouping and padding (bug 23432)
+ Copyright (C) 2023 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <locale.h>
+#include <stdio.h>
+#include <support/check.h>
+#include <support/support.h>
+
+static int
+do_test (void)
+{
+ char buf[80];
+
+ xsetlocale (LC_NUMERIC, "de_DE.UTF-8");
+
+ sprintf (buf, "%+-'13.9d", 1234567);
+ TEST_COMPARE_STRING (buf, "+001.234.567 ");
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/stdio-common/vfprintf-process-arg.c b/stdio-common/vfprintf-process-arg.c
index 2c651946df..cd3eaf5c0c 100644
--- a/stdio-common/vfprintf-process-arg.c
+++ b/stdio-common/vfprintf-process-arg.c
@@ -257,7 +257,7 @@ LABEL (unsigned_number): /* Unsigned number of base BASE. */
width -= 2;
}
- width -= workend - string + prec;
+ width -= number_length + prec;
Xprintf_buffer_pad (buf, L_('0'), prec);
--
2.39.1

View File

@ -4,6 +4,7 @@ lib32-gcc-libs
python
bison
libjpeg-turbo
libgit2

View File

@ -6,7 +6,7 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=libcap
pkgver=2.66
pkgver=2.67
pkgrel=01
pkgdesc='POSIX 1003.1e capabilities'
arch=('x86_64')
@ -14,7 +14,7 @@ url="https://sites.google.com/site/fullycapable/"
depends=('glibc' 'pam')
makedepends=('linux-api-headers')
provides=('libcap.so' 'libpsx.so')
#options=(debug)
#options=(debug) ## removed 20230206 by arch as an option
source=("https://kernel.org/pub/linux/libs/security/linux-privs/${pkgname}2/${pkgname}-$pkgver.tar."{xz,sign}
)
@ -38,5 +38,7 @@ license=('GPL2')
validpgpkeys=(38A644698C69787344E954CE29EE848AE2CCF3F4) # Andrew G. Morgan <morgan@kernel.org>
sha256sums=(15c40ededb3003d70a283fe587a36b7d19c8b3b554e33f86129c059a4bb466b2 # libcap-2.66.tar.xz
c831cd6be9961544ce511aa5dba811a5c6ef875ddd43cbe73daef5268eddaac1) # libcap-2.66.tar.sign
sha256sums=(ce9b22fdc271beb6dae7543da5f74cf24cb82e6848cfd088a5a069dec5ea5198 # libcap-2.67.tar.xz
6dc99fd24823d256a496e4dde0fc1cbfc40e61d3a0301a6c1f22746248edd997) # libcap-2.67.tar.sign
#

View File

@ -4,7 +4,7 @@
# Contributor: Hugo Doria <hugo@archlinux.org>
pkgname=libcap
pkgver=2.66
pkgver=2.67
pkgrel=1
pkgdesc="POSIX 1003.1e capabilities"
arch=(x86_64)
@ -13,11 +13,10 @@ license=(GPL2)
depends=(glibc pam)
makedepends=(linux-api-headers)
provides=(libcap.so libpsx.so)
options=(debug)
source=(https://kernel.org/pub/linux/libs/security/linux-privs/${pkgname}2/$pkgname-$pkgver.tar.{xz,sign})
sha512sums=('ac005b622f6e065f30ce282a5c87240e7b9da75366ee537aa4835bc501b44bc242c10a4ba4dc070e2415fc7f635d1c3c4e45fbeeaf962cf7973dda82bf6377f0'
sha512sums=('2e52c5a571cc1565e6829b0889f63216af10dfd9a86485f8ae7d0fcf4cc0db96aa21eb2ddea29e8dadf41a1194e91fb5961fe84ba07beb2ce950b6131be099d4'
'SKIP')
b2sums=('e79bf10c6a3dbffe96dc97aad0bed67caa0b3805d9dcaff1e4a8a833396ee5c6da4f7f0d321b254e99a00073bc39021b9f3a4b350d93094d0df4d74889b3ca56'
b2sums=('bd9be22e439397a3c1726093cfee2410df93773b3139d50a1cdc10daecb666ddb9b64daded6e0ec9f2fd6defd16ea156dbd66bd55360ea266131f31ea0f0e989'
'SKIP')
validpgpkeys=(38A644698C69787344E954CE29EE848AE2CCF3F4) # Andrew G. Morgan <morgan@kernel.org>

View File

@ -7,12 +7,14 @@
pkgname=libnl
pkgver=3.7.0
pkgrel=02
pkgrel=03
pkgdesc='Library for applications dealing with netlink sockets'
arch=(x86_64)
url='https://github.com/thom311/libnl/'
depends=('glibc' 'gcc-libs')
#options=('debug') # uncomment this to produce the debug package for libnl
provides=('libnl-3.so' 'libnl-cli-3.so' 'libnl-genl-3.so' 'libnl-idiag-3.so'
'libnl-nf-3.so' 'libnl-route-3.so' 'libnl-xfrm-3.so')
makedepends=(bison)
backup=(etc/libnl/classid
etc/libnl/pktloc)
@ -47,6 +49,4 @@ sha256sums=(9fe43ccbeeea72c653bdcf8c93332583135cda46a79507bfd0a483bb57f65939 # l
abdf098b3a7802a1e77086e5f92835ad25a2da6a59a05d6a5a086d66a323bffc) # libnl-3.7.0.tar.gz.sig
# 20d92eaddcfde543045155667a04dc2fcf69ef23ee7c6294d32380da37101502 libnl-3.7.0-02-x86_64.pkg.tar.xz
#

View File

@ -3,12 +3,14 @@
pkgname=libnl
pkgver=3.7.0
pkgrel=2
pkgrel=3
pkgdesc='Library for applications dealing with netlink sockets'
arch=('x86_64')
url='https://github.com/thom311/libnl/'
license=('GPL')
depends=('glibc' 'gcc-libs')
provides=('libnl-3.so' 'libnl-cli-3.so' 'libnl-genl-3.so' 'libnl-idiag-3.so'
'libnl-nf-3.so' 'libnl-route-3.so' 'libnl-xfrm-3.so')
backup=('etc/libnl/classid'
'etc/libnl/pktloc')
validpgpkeys=('49EA7C670E0850E7419514F629C2366E4DFC5728') # Thomas Haller

View File

@ -7,7 +7,7 @@
pkgname=libtool
pkgver=2.4.7+4+g1ec8fa28
pkgrel=01
pkgrel=02
_gccver=12.2.1
pkgdesc='A generic library support script'
arch=(x86_64)
@ -84,3 +84,4 @@ sha256sums=(SKIP
0a31d3ed91d97a18e17942c85018899c0233493a54c885f4c133454de522ef50) # grep_3.8_fix.patch
# fa1a0f7c279507f4b3c5bf10424a8e49a7b77369579009c150f5ad30ec224bec libtool-2.4.7+4+g1ec8fa28-02-x86_64.pkg.tar.lz

View File

@ -9,7 +9,7 @@
pkgname=libtool
_commit=1ec8fa28dcb29500d485c136db28315671ec4c3b
pkgver=2.4.7+4+g1ec8fa28
pkgrel=1
pkgrel=2
_gccver=12.2.1
pkgdesc='A generic library support script'
arch=(x86_64)

View File

@ -8,7 +8,8 @@
# toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc
pkgname=linux-api-headers
pkgver=5.18.18
pkgver=6.1.9
#pkgver=5.18.18
pkgrel=01
pkgdesc='Kernel headers sanitized for use in userspace'
arch=(any)
@ -37,7 +38,8 @@ license=(GPL2)
validpgpkeys=('ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
'647F28654894E3BD457199BE38DBBDC86092693E') # Greg Kroah-Hartman
sha256sums=(c1c376c8dcc5c226c5f190f6eaf687495d3cf87b927d5e1a8fed9bcfa966402b # linux-5.18.18.tar.xz
b4d9712e8a75aeb718705a0794b7fe0c63be7b283333ee68e4df6fb946173cd1) # linux-5.18.18.tar.sign
sha256sums=(d60cf185693c386e7acd9f3eb3a94ae30ffbfee0a9447a20e83711e0bdf5922b # linux-6.1.9.tar.xz
#c1c376c8dcc5c226c5f190f6eaf687495d3cf87b927d5e1a8fed9bcfa966402b # linux-5.18.18.tar.xz
#b4d9712e8a75aeb718705a0794b7fe0c63be7b283333ee68e4df6fb946173cd1) # linux-5.18.18.tar.sign
3bd23ba1f014fc5b79e316f35493ab4047bf2b4101e9d608dc821dc91fd24c3b) # linux-6.1.9.tar.sign

View File

@ -6,7 +6,7 @@
# toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc
pkgname=linux-api-headers
pkgver=5.18.15
pkgver=6.1.9
pkgrel=1
pkgdesc='Kernel headers sanitized for use in userspace'
arch=(any)
@ -14,7 +14,7 @@ url='https://www.gnu.org/software/libc'
license=(GPL2)
makedepends=(rsync)
source=(https://www.kernel.org/pub/linux/kernel/v${pkgver:0:1}.x/linux-${pkgver}.tar.{xz,sign})
sha256sums=('69804febdc388a69dfb64493b7b58d402853de3a14144ea8db7fd67c30dcbe3c'
sha256sums=('d60cf185693c386e7acd9f3eb3a94ae30ffbfee0a9447a20e83711e0bdf5922b'
'SKIP')
validpgpkeys=('ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
'647F28654894E3BD457199BE38DBBDC86092693E') # Greg Kroah-Hartman

View File

@ -1,4 +1,3 @@
rsync

View File

@ -8,7 +8,7 @@
pkgname=mpfr
_pkgver=4.2.0
#_patchver=1
pkgrel=02
pkgrel=03
#pkgver=${_pkgver}.p${_patchver}
pkgver=$_pkgver
pkgdesc='Multiple-precision floating-point library'
@ -17,14 +17,16 @@ url='https://www.mpfr.org/'
depends=('glibc' 'gmp')
makedepends=('autoconf-archive' 'automake')
#options=(debug) ### uncomment here for debug pkg
source=(https://ftp.gnu.org/gnu/mpfr/mpfr-${_pkgver}.tar.xz{,.sig})
source=(https://ftp.gnu.org/gnu/mpfr/mpfr-${_pkgver}.tar.xz{,.sig}
tsprintf.patch::https://gitlab.inria.fr/mpfr/mpfr/-/commit/5172494c09718ffcb7ef1f19b3b211e3bce8781a.patch)
# patches.diff) # wget https://www.mpfr.org/mpfr-4.1.1/allpatches -O patches.diff
## options=(debug) ## uncomment this to produce the debug pkg
prepare() {
cd $pkgname-${_pkgver}
# patch -p1 < "$srcdir"/patches.diff
# autoreconf -fiv
patch -Np1 < ../tsprintf.patch
# sed -i '/check_vsprintf ("+1,234,567/d' tests/tsprintf.c
autoreconf -fiv
}
build() {
@ -54,7 +56,7 @@ validpgpkeys=('07F3DBBECC1A39605078094D980C197698C3739D'
'A534BE3F83E241D918280AEB5831D11A0D4DB02A') # Vincent Lefevre <vincent@vinc17.net>
sha256sums=(06a378df13501248c1b2db5aa977a2c8126ae849a9d9b7be2546fb4a9c26d993 # mpfr-4.2.0.tar.xz
8151b7ef1b84c6384a08b05e007fa42da877a18528c44206b64d78b9baedcb7a) # mpfr-4.2.0.tar.xz.sig
# 447337f7b31c07911247b547fa8d4f2b8c82874b57f9d8ad4fa6cd6de40c4dca mpfr-4.2.0-02-x86_64.pkg.tar.xz
8151b7ef1b84c6384a08b05e007fa42da877a18528c44206b64d78b9baedcb7a # mpfr-4.2.0.tar.xz.sig
c05587045fb064853bfd5d2953f95bbc9f3630787a9c45e77e6509f3ebabbcd3) # tsprintf.patch
#

View File

@ -6,7 +6,7 @@
pkgname=mpfr
_pkgver=4.2.0
#_patchver=1
pkgrel=2
pkgrel=3
#pkgver=${_pkgver}.p${_patchver}
pkgver=$_pkgver
pkgdesc='Multiple-precision floating-point library'
@ -14,20 +14,24 @@ arch=(x86_64)
url='https://www.mpfr.org/'
license=(GPL3 LGPL3)
depends=(glibc gmp)
source=(https://ftp.gnu.org/gnu/mpfr/mpfr-${_pkgver}.tar.xz{,.sig})
source=(https://ftp.gnu.org/gnu/mpfr/mpfr-${_pkgver}.tar.xz{,.sig}
tsprintf.patch::https://gitlab.inria.fr/mpfr/mpfr/-/commit/5172494c09718ffcb7ef1f19b3b211e3bce8781a.patch)
# patches.diff) # wget https://www.mpfr.org/mpfr-4.1.1/allpatches -O patches.diff
sha512sums=('58e843125884ca58837ae5159cd4092af09e8f21931a2efd19c15de057c9d1dc0753ae95c592e2ce59a727fbc491af776db8b00a055320413cdcf2033b90505c'
'SKIP')
'SKIP'
'6d68ee5d286997c9a0bb66bf8da71a8af39e375091b743f1858dea9054b0f4f725ea0bcc37d39ac87b8a95ae508204c61413f4b2cb741807558952ee1a5d81e9')
b2sums=('dd88ae3a6a910ad8faeb791b49c3b1085de5d0d4c49c637c124bf4d9bc79fb621d0d1d69e07d0642b9b678f6d355a5830d083dfd189e1e91d0e04c970c10bd64'
'SKIP')
'SKIP'
'16222c0f409d757b6cad515d13a1673be26302f48bc206f8526cb46a2d357404b181811da6180326be136a265d63b8e47b81107b01f4c8abc4637fd9d5fca4ea')
validpgpkeys=('07F3DBBECC1A39605078094D980C197698C3739D'
'A534BE3F83E241D918280AEB5831D11A0D4DB02A') # Vincent Lefevre <vincent@vinc17.net>
prepare() {
cd $pkgname-${_pkgver}
# patch -p1 < "$srcdir"/patches.diff
# autoreconf -fiv
patch -Np1 < ../tsprintf.patch
# sed -i '/check_vsprintf ("+1,234,567/d' tests/tsprintf.c
autoreconf -fiv
}
build() {

56
mpfr/tsprintf.patch Normal file
View File

@ -0,0 +1,56 @@
From 5172494c09718ffcb7ef1f19b3b211e3bce8781a Mon Sep 17 00:00:00 2001
From: Vincent Lefevre <vincent@vinc17.net>
Date: Tue, 10 Jan 2023 17:05:17 +0100
Subject: [PATCH] [tests/tsprintf.c] Modified a buggy test of the thousands
separator.
The test
check_vsprintf ("+01,234,567 :", "%0+ -'13.10Pd:", (mpfr_prec_t) 1234567);
is based on the output from glibc up to 2.36, which is incorrect:
https://sourceware.org/bugzilla/show_bug.cgi?id=23432
The GNU C Library has apparently been partially fixed in its Git
repository for the future 2.37, since a tsprintf failure has been
reported (this is a bug in this test, not in the MPFR library):
https://sympa.inria.fr/sympa/arc/mpfr/2023-01/msg00001.html
So, modified the test to avoid the particular case of leading zeros
due to the precision field larger than the number of digits. This
case has already been tested without the thousands separator (where
there are no issues with the C libraries), so that we do not miss
much testing. Added a comment explaining the issue and a possible
solution for future testing of this particular case (if need be).
---
tests/tsprintf.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/tsprintf.c b/tests/tsprintf.c
index c68b2ba71..c0182503b 100644
--- a/tests/tsprintf.c
+++ b/tests/tsprintf.c
@@ -1719,7 +1719,17 @@ test_locale (void)
check_sprintf ("000000001,000", "%'013.4Rg", x);
#ifdef PRINTF_GROUPFLAG
- check_vsprintf ("+01,234,567 :", "%0+ -'13.10Pd:", (mpfr_prec_t) 1234567);
+ /* Do not test the thousands separator with a precision field larger
+ than the number of digits (thus needing leading zeros), such as
+ "%0+ -'13.10Pd:" (used up to MPFR 4.2.0), since the GNU libc is
+ buggy: https://sourceware.org/bugzilla/show_bug.cgi?id=23432
+ We don't know about the other implementations.
+ If we wanted to check that and avoid a failure of the test because of
+ a buggy C library (while MPFR would be consistent with the C library),
+ we could compare the MPFR output with both the correct output and the
+ output from the C library (possibly buggy). But to do that in a clean
+ way, this would require a change in the check_vsprintf() call. */
+ check_vsprintf ("+1,234,567 :", "%0+ -'13Pd:", (mpfr_prec_t) 1234567);
#endif
mpfr_clear (x);
--
GitLab