Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • Maytha8/glibc
  • vimerbf-guest/glibc
  • schopin/glibc
  • yumeyao/glibc
  • carlespina/po-debconf-manager-glibc
  • Claudia/glibc-widevine
  • andrewsh/glibc
  • jscott/glibc
  • bluca/glibc
  • gioele/glibc
  • rouca/glibc
  • sven/glibc
  • josch/glibc
  • cjwatson/glibc
  • fw/glibc
  • rbalint/glibc
  • bsd-team/glibc-packaging
  • glibc-team/glibc
  • bigon/glibc
  • ahrex-guest/glibc
  • friki/glibc
21 results
Show changes
Commits on Source (22)
Showing
with 879 additions and 26 deletions
glibc (2.39-2) experimental; urgency=medium
[ Aurelien Jarno ]
* debian/patches/any/submitted-static-exp10.diff: add proposed patch to fix
missing exp10 math function in libm.a on i386 and m68k.
* debian/control.in/libc, debian/rules.d/control.mk, debian/sysdeps/ia64.mk:
remove support for ia64, it is not supported upstream anymore.
* debian/patches/git-updates.diff: update from upstream stable branch.
-- Aurelien Jarno <aurel32@debian.org> Sun, 12 May 2024 00:54:31 +0200
glibc (2.39-1) experimental; urgency=medium
 
[ Aurelien Jarno ]
......@@ -46,6 +57,54 @@ glibc (2.39-1) experimental; urgency=medium
 
-- Aurelien Jarno <aurel32@debian.org> Sat, 04 May 2024 00:35:25 +0200
 
glibc (2.38-11) unstable; urgency=medium
[ Aurelien Jarno ]
* debian/testsuite-xfail-debian.mk: ignore a few math failures due to GCC
13 on hppa. Closes: #1070875.
* debian/patches/any/submitted-static-*.diff: add proposed patches to fix
various missing math function in libm.a. Closes: #1070872.
* debian/testsuite-xfail-debian.mk: mark tst-support_descriptors as XFAIL,
due to sbuild bug #1070003.
-- Aurelien Jarno <aurel32@debian.org> Sat, 11 May 2024 23:17:18 +0200
glibc (2.38-10) unstable; urgency=medium
* debian/control.in/main, debian/rules.d/control.mk: build-depends on
g++$(DEB_GCC_VERSION)-for-host instead of listing cross-build-dependency
per architecture. Also depends on g++$(DEB_GCC_VERSION)-multilib instead
of hardcoding the version.
-- Aurelien Jarno <aurel32@debian.org> Fri, 10 May 2024 17:59:41 +0200
glibc (2.38-9) unstable; urgency=medium
[ Aurelien Jarno ]
* debian/rules: build with gcc-13.
* debian/tests/control: re-enable autopkgtest on arm64, the memory
consumption should be lower with gcc-13.
* debian/testsuite-xfail-debian.mk: remove now fixed riscv64 XFAILs.
* debian/debhelper.in/libc-bin.{install,lintian-overrides}: move ldconfig to
/usr/sbin.
* debian/patches/git-updates.diff: update from upstream stable branch.
[ M. Buecher ]
* debian/local/usr_sbin/locale-gen: enhance to support referencing locales
in /usr/local/share/i18n/locales through copy. Closes: #1066887
-- Aurelien Jarno <aurel32@debian.org> Fri, 10 May 2024 15:59:00 +0200
glibc (2.38-8) unstable; urgency=medium
[ Aurelien Jarno ]
* debian/patches/arm64/local-remove-aarch64-bits-math-vector-h.diff:
temporarily remove aarch64 specific bits/math-vector.h file, so that the
generic one is used instead. Addresses: #1070441, #1070443, #1070444,
#1070446.
-- Aurelien Jarno <aurel32@debian.org> Mon, 06 May 2024 22:34:15 +0200
glibc (2.38-7) unstable; urgency=medium
 
[ Samuel Thibault ]
......@@ -61,6 +120,8 @@ glibc (2.38-7) unstable; urgency=medium
libc.abilist on hurd-amd64.
* debian/patches/hurd-i386/local-usr.diff: Also update libc.abilist on
hurd-amd64.
* debian/patches/hurd-i386/git-AT_NO_AUTOMOUNT.diff: Stop mapping
AT_NO_AUTOMOUNT to O_NOTRANS.
 
[ Aurelien Jarno ]
* debian/patches/any/git-test-epoll.diff: improve test-epoll robustness
......
......@@ -8,8 +8,7 @@ Build-Depends: gettext, dpkg (>= 1.18.7), dpkg-dev (>= 1.17.14), xz-utils, file,
mig-for-host (>= 1.8+git20200618-7~) [hurd-any], gnumach-dev (>= 2:1.8+git20200710-2~) [hurd-any],
hurd-dev (>= 1:0.9.git20201127-4~) [hurd-any] | hurd-headers-dev [hurd-any],
binutils-for-host (>= 2.38),
g++-12 <!cross>, g++-12 (>= 12.3.0-2) [alpha] <!cross>, g++-12-multilib [amd64 i386 mips mipsel mipsn32 mipsn32el mips64 mips64el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 s390x sparc sparc64 x32] <!nobiarch>,
g++-12-x86-64-linux-gnu [amd64] <cross>, g++-12-arc-linux-gnu [arc] <cross>, g++-12-aarch64-linux-gnu [arm64] <cross>, g++-12-arm-linux-gnueabi [armel] <cross>, g++-12-arm-linux-gnueabihf [armhf] <cross>, g++-12-hppa-linux-gnu [hppa] <cross>, g++-12-i686-linux-gnu [i386] <cross>, g++-12-loongarch64-linux-gnu [loong64] <cross>, g++-12-m68k-linux-gnu [m68k] <cross>, g++-12-mips-linux-gnu [mips] <cross>, g++-12-mipsel-linux-gnu [mipsel] <cross>, g++-12-mips64-linux-gnuabin32 [mipsn32] <cross>, g++-12-mips64el-linux-gnuabin32 [mipsn32el] <cross>, g++-12-mips64-linux-gnuabi64 [mips64] <cross>, g++-12-mips64el-linux-gnuabi64 [mips64el] <cross>, g++-12-mipsisa32r6-linux-gnu [mipsr6] <cross>, g++-12-mipsisa32r6el-linux-gnu [mipsr6el] <cross>, g++-12-mipsisa64r6-linux-gnuabin32 [mipsn32r6] <cross>, g++-12-mipsisa64r6el-linux-gnuabin32 [mipsn32r6el] <cross>, g++-12-mipsisa64r6-linux-gnuabi64 [mips64r6] <cross>, g++-12-mipsisa64r6el-linux-gnuabi64 [mips64r6el] <cross>, g++-12-nios2-linux-gnu [nios2] <cross>, g++-12-powerpc-linux-gnu [powerpc] <cross>, g++-12-powerpc64-linux-gnu [ppc64] <cross>, g++-12-powerpc64le-linux-gnu [ppc64el] <cross>, g++-12-riscv64-linux-gnu [riscv64] <cross>, g++-12-sparc-linux-gnu [sparc] <cross>, g++-12-sparc64-linux-gnu [sparc64] <cross>, g++-12-s390x-linux-gnu [s390x] <cross>, g++-12-sh3-linux-gnu [sh3] <cross>, g++-12-sh4-linux-gnu [sh4] <cross>, g++-12-x86-64-linux-gnux32 [x32] <cross>, g++-12-alpha-linux-gnu [alpha] <cross>, g++-12-ia64-linux-gnu [ia64] <cross>,
g++-13-for-host, g++-13-multilib [amd64 i386 mips mipsel mipsn32 mipsn32el mips64 mips64el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 s390x sparc sparc64 x32] <!nobiarch>,
python3:native,
libidn2-0 (>= 2.0.5~) <!nocheck>,
libc-bin (>= 2.39) <cross>,
......@@ -193,7 +192,7 @@ Multi-Arch: same
Depends: libc6 (= ${binary:Version}) <!stage1>, libc-dev-bin (= ${binary:Version}), ${misc:Depends}, linux-libc-dev [linux-any], gnumach-dev [hurd-any], hurd-dev (>= 20080607-3) [hurd-any] | hurd-headers-dev [hurd-any], ${libcrypt-dev:Depends}, ${rpcsvc-proto:Depends}
Replaces: hurd-dev (<< 20120408-3) [hurd-any], libc6 (<= 2.32-1)
Suggests: glibc-doc, manpages-dev
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha ia64 hurd-any]
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha hurd-any]
Breaks: check (<< 0.15.2-2+b1) [s390x], ${libc-dev:Breaks}, libassimp-dev (<= 5.2.4~ds0-1), libbson-dev (<= 1.22.0-1), libdeal.ii-dev (<= 9.4.0-1), libdolfin-dev-common (<= 2019.2.0~git20220407.d29e24d-5), libeckit-dev (<= 1.20.0-1), libfclib-dev (<= 3.1.0+dfsg-2), libfltk1.3-dev (<= 1.3.8-4+b1), libinsighttoolkit4-dev (<= 4.13.3withdata-dfsg2-3+b1), libinsighttoolkit5-dev (<= 5.2.1-5+b1), libismrmrd-dev (<= 1.8.0-2), liblog4cplus-dev (<= 2.0.7-1), libmgl-dev (<= 8.0.1-2), libmimalloc2.0 (<= 2.0.6+ds-1), libminc-dev (<= 2.4.03-5), libmrpt-ros1bridge-dev (<= 1:2.4.9+ds-4+b2), libnetcdf-dev (<= 1:4.9.0-3), libnetcdf-mpi-dev (<= 1:4.9.0-1), libnetcdf-pnetcdf-dev (<= 1:4.9.0-1), libns3-dev (<= 3.36.1+dfsg-4), libopenms-dev (<= 2.6.0+cleaned1-3+b1), libtrilinos-amesos2-dev (<= 13.2.0-3), libtrilinos-amesos-dev (<= 13.2.0-3), libtrilinos-anasazi-dev (<= 13.2.0-3), libtrilinos-aztecoo-dev (<= 13.2.0-3), libtrilinos-belos-dev (<= 13.2.0-3), libtrilinos-epetra-dev (<= 13.2.0-3), libtrilinos-epetraext-dev (<= 13.2.0-3), libtrilinos-galeri-dev (<= 13.2.0-3), libtrilinos-ifpack2-dev (<= 13.2.0-3), libtrilinos-ifpack-dev (<= 13.2.0-3), libtrilinos-intrepid2-dev (<= 13.2.0-3), libtrilinos-intrepid-dev (<= 13.2.0-3), libtrilinos-isorropia-dev (<= 13.2.0-3), libtrilinos-kokkos-dev (<= 13.2.0-3), libtrilinos-kokkos-kernels-dev (<= 13.2.0-3), libtrilinos-komplex-dev (<= 13.2.0-3), libtrilinos-ml-dev (<= 13.2.0-3), libtrilinos-moertel-dev (<= 13.2.0-3), libtrilinos-muelu-dev (<= 13.2.0-3), libtrilinos-nox-dev (<= 13.2.0-3), libtrilinos-phalanx-dev (<= 13.2.0-3), libtrilinos-pike-dev (<= 13.2.0-3), libtrilinos-piro-dev (<= 13.2.0-3), libtrilinos-pliris-dev (<= 13.2.0-3), libtrilinos-rol-dev (<= 13.2.0-3), libtrilinos-rtop-dev (<= 13.2.0-3), libtrilinos-rythmos-dev (<= 13.2.0-3), libtrilinos-sacado-dev (<= 13.2.0-3), libtrilinos-shylu-dev (<= 13.2.0-3), libtrilinos-stokhos-dev (<= 13.2.0-3), libtrilinos-stratimikos-dev (<= 13.2.0-3), libtrilinos-teko-dev (<= 13.2.0-3), libtrilinos-teuchos-dev (<= 13.2.0-3), libtrilinos-thyra-dev (<= 13.2.0-3), libtrilinos-tpetra-dev (<= 13.2.0-3), libtrilinos-trilinoscouplings-dev (<= 13.2.0-3), libtrilinos-triutils-dev (<= 13.2.0-3), libtrilinos-xpetra-dev (<= 13.2.0-3), libtrilinos-zoltan2-dev (<= 13.2.0-3), libvisp-dev (<= 3.5.0-2+b1), libvotca-dev (<= 2022-3), libvtk6-dev (<= 6.3.0+dfsg2-8.1+b1), libvtk7-dev (<= 7.1.1+dfsg2-10.2), igblast (<= 1.19.0-1), libasyncns-dev (<= 0.8-6+b2), libatm1-dev (<= 1:2.5.1-4), libaws20-dev (<= 20.2-2+b1), libboinc-app-dev (<= 7.20.2+dfsg-1), libcups2-dev (<= 2.4.2-1), libdkim-dev (<= 1:1.0.21-4+b2), libghc-resolv-dev (<= 0.1.2.0-3), libghc-resolv-prof (<= 0.1.2.0-3), libglib2.0-dev (<= 2.72.3-1), libgloox-dev (<= 1.0.24-2+b1), libhesiod-dev (<= 3.2.1-3.1+b1), libinfinity-0.7-dev (<= 0.7.2-1+b1), libldap-dev (<= 2.5.12+dfsg-2), libloudmouth1-dev (<= 1.5.4-1), libmongoc-dev (<= 1.22.1-1), libmysqlclient-dev (<= 8.0.29-1), libnfsidmap-dev (<= 1:2.6.1-2), libola-dev (<= 0.10.8.nojsmin-2), libopenafs-dev (<= 1.8.8.1-3), libopendkim-dev (<= 2.11.0~beta2-7), libopendmarc-dev (<= 1.4.2-1), libopenzwave1.6-dev (<= 1.6.1914+ds-1), libpg-query-dev (<= 13-2.1.2-2), librbl-dev (<= 2.11.0~beta2-7), libre-dev (<= 1.1.0-1+b1), libshishi-dev (<= 1.0.2-11), libslurm-dev (<= 21.08.8.2-1), libsocksd0-dev (<= 1.4.2+dfsg-7+b4), libspf2-dev (<= 1.2.10-7.1+b1), libstrophe-dev (<= 0.12.1-2), libtaningia-dev (<= 0.2.2-2+b1), libvbr-dev (<= 2.11.0~beta2-7), open-vm-tools-dev (<= 2:12.0.5-2), pidgin-librvp (<= 0.9.7cvs-3), proftpd-dev (<= 1.3.7d+dfsg-2), slurm-wlm-basic-plugins-dev (<= 21.08.8.2-1), catch (<< 1.12.2-0.1), heimdal-multidev (<= 7.7.0+dfsg-4), binutils (<< 2.38)
Conflicts: libc6.1-dev, libc0.3-dev,
Description: GNU C Library: Development Libraries and Header Files
......@@ -228,7 +227,7 @@ Description: GNU C Library: Shared libraries - udeb
installer. Do not install it on a normal system.
Package: libc6.1
Architecture: alpha ia64
Architecture: alpha
Section: libs
Priority: optional
Multi-Arch: same
......@@ -258,14 +257,14 @@ Description: GNU C Library: Shared libraries
and the standard math library, as well as many others.
Package: libc6.1-dev
Architecture: alpha ia64
Architecture: alpha
Section: libdevel
Priority: optional
Multi-Arch: same
Depends: libc6.1 (= ${binary:Version}) <!stage1>, libc-dev-bin (= ${binary:Version}), ${misc:Depends}, linux-libc-dev [linux-any], gnumach-dev [hurd-any], hurd-dev (>= 20080607-3) [hurd-any] | hurd-headers-dev [hurd-any], ${libcrypt-dev:Depends}, ${rpcsvc-proto:Depends}
Replaces: hurd-dev (<< 20120408-3) [hurd-any], libc6.1 (<= 2.32-1)
Suggests: glibc-doc, manpages-dev
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha ia64 hurd-any]
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha hurd-any]
Breaks: check (<< 0.15.2-2+b1) [s390x], ${libc-dev:Breaks}, libassimp-dev (<= 5.2.4~ds0-1), libbson-dev (<= 1.22.0-1), libdeal.ii-dev (<= 9.4.0-1), libdolfin-dev-common (<= 2019.2.0~git20220407.d29e24d-5), libeckit-dev (<= 1.20.0-1), libfclib-dev (<= 3.1.0+dfsg-2), libfltk1.3-dev (<= 1.3.8-4+b1), libinsighttoolkit4-dev (<= 4.13.3withdata-dfsg2-3+b1), libinsighttoolkit5-dev (<= 5.2.1-5+b1), libismrmrd-dev (<= 1.8.0-2), liblog4cplus-dev (<= 2.0.7-1), libmgl-dev (<= 8.0.1-2), libmimalloc2.0 (<= 2.0.6+ds-1), libminc-dev (<= 2.4.03-5), libmrpt-ros1bridge-dev (<= 1:2.4.9+ds-4+b2), libnetcdf-dev (<= 1:4.9.0-3), libnetcdf-mpi-dev (<= 1:4.9.0-1), libnetcdf-pnetcdf-dev (<= 1:4.9.0-1), libns3-dev (<= 3.36.1+dfsg-4), libopenms-dev (<= 2.6.0+cleaned1-3+b1), libtrilinos-amesos2-dev (<= 13.2.0-3), libtrilinos-amesos-dev (<= 13.2.0-3), libtrilinos-anasazi-dev (<= 13.2.0-3), libtrilinos-aztecoo-dev (<= 13.2.0-3), libtrilinos-belos-dev (<= 13.2.0-3), libtrilinos-epetra-dev (<= 13.2.0-3), libtrilinos-epetraext-dev (<= 13.2.0-3), libtrilinos-galeri-dev (<= 13.2.0-3), libtrilinos-ifpack2-dev (<= 13.2.0-3), libtrilinos-ifpack-dev (<= 13.2.0-3), libtrilinos-intrepid2-dev (<= 13.2.0-3), libtrilinos-intrepid-dev (<= 13.2.0-3), libtrilinos-isorropia-dev (<= 13.2.0-3), libtrilinos-kokkos-dev (<= 13.2.0-3), libtrilinos-kokkos-kernels-dev (<= 13.2.0-3), libtrilinos-komplex-dev (<= 13.2.0-3), libtrilinos-ml-dev (<= 13.2.0-3), libtrilinos-moertel-dev (<= 13.2.0-3), libtrilinos-muelu-dev (<= 13.2.0-3), libtrilinos-nox-dev (<= 13.2.0-3), libtrilinos-phalanx-dev (<= 13.2.0-3), libtrilinos-pike-dev (<= 13.2.0-3), libtrilinos-piro-dev (<= 13.2.0-3), libtrilinos-pliris-dev (<= 13.2.0-3), libtrilinos-rol-dev (<= 13.2.0-3), libtrilinos-rtop-dev (<= 13.2.0-3), libtrilinos-rythmos-dev (<= 13.2.0-3), libtrilinos-sacado-dev (<= 13.2.0-3), libtrilinos-shylu-dev (<= 13.2.0-3), libtrilinos-stokhos-dev (<= 13.2.0-3), libtrilinos-stratimikos-dev (<= 13.2.0-3), libtrilinos-teko-dev (<= 13.2.0-3), libtrilinos-teuchos-dev (<= 13.2.0-3), libtrilinos-thyra-dev (<= 13.2.0-3), libtrilinos-tpetra-dev (<= 13.2.0-3), libtrilinos-trilinoscouplings-dev (<= 13.2.0-3), libtrilinos-triutils-dev (<= 13.2.0-3), libtrilinos-xpetra-dev (<= 13.2.0-3), libtrilinos-zoltan2-dev (<= 13.2.0-3), libvisp-dev (<= 3.5.0-2+b1), libvotca-dev (<= 2022-3), libvtk6-dev (<= 6.3.0+dfsg2-8.1+b1), libvtk7-dev (<= 7.1.1+dfsg2-10.2), igblast (<= 1.19.0-1), libasyncns-dev (<= 0.8-6+b2), libatm1-dev (<= 1:2.5.1-4), libaws20-dev (<= 20.2-2+b1), libboinc-app-dev (<= 7.20.2+dfsg-1), libcups2-dev (<= 2.4.2-1), libdkim-dev (<= 1:1.0.21-4+b2), libghc-resolv-dev (<= 0.1.2.0-3), libghc-resolv-prof (<= 0.1.2.0-3), libglib2.0-dev (<= 2.72.3-1), libgloox-dev (<= 1.0.24-2+b1), libhesiod-dev (<= 3.2.1-3.1+b1), libinfinity-0.7-dev (<= 0.7.2-1+b1), libldap-dev (<= 2.5.12+dfsg-2), libloudmouth1-dev (<= 1.5.4-1), libmongoc-dev (<= 1.22.1-1), libmysqlclient-dev (<= 8.0.29-1), libnfsidmap-dev (<= 1:2.6.1-2), libola-dev (<= 0.10.8.nojsmin-2), libopenafs-dev (<= 1.8.8.1-3), libopendkim-dev (<= 2.11.0~beta2-7), libopendmarc-dev (<= 1.4.2-1), libopenzwave1.6-dev (<= 1.6.1914+ds-1), libpg-query-dev (<= 13-2.1.2-2), librbl-dev (<= 2.11.0~beta2-7), libre-dev (<= 1.1.0-1+b1), libshishi-dev (<= 1.0.2-11), libslurm-dev (<= 21.08.8.2-1), libsocksd0-dev (<= 1.4.2+dfsg-7+b4), libspf2-dev (<= 1.2.10-7.1+b1), libstrophe-dev (<= 0.12.1-2), libtaningia-dev (<= 0.2.2-2+b1), libvbr-dev (<= 2.11.0~beta2-7), open-vm-tools-dev (<= 2:12.0.5-2), pidgin-librvp (<= 0.9.7cvs-3), proftpd-dev (<= 1.3.7d+dfsg-2), slurm-wlm-basic-plugins-dev (<= 21.08.8.2-1), catch (<< 1.12.2-0.1), heimdal-multidev (<= 7.7.0+dfsg-4), binutils (<< 2.38)
Conflicts: libc6-dev, libc0.3-dev,
Description: GNU C Library: Development Libraries and Header Files
......@@ -273,7 +272,7 @@ Description: GNU C Library: Development Libraries and Header Files
and link programs which use the standard C library.
Package: libc6.1-dbg
Architecture: alpha ia64
Architecture: alpha
Section: debug
Priority: optional
Multi-Arch: same
......@@ -286,7 +285,7 @@ Description: GNU C Library: detached debugging symbols
Package: libc6.1-udeb
Package-Type: udeb
Architecture: alpha ia64
Architecture: alpha
Section: debian-installer
Priority: optional
Provides: libc6.1, libc-udeb, libnss-dns-udeb, libnss-files-udeb
......@@ -337,7 +336,7 @@ Multi-Arch: same
Depends: libc0.3 (= ${binary:Version}) <!stage1>, libc-dev-bin (= ${binary:Version}), ${misc:Depends}, linux-libc-dev [linux-any], gnumach-dev [hurd-any], hurd-dev (>= 20080607-3) [hurd-any] | hurd-headers-dev [hurd-any], ${libcrypt-dev:Depends}, ${rpcsvc-proto:Depends}
Replaces: hurd-dev (<< 20120408-3) [hurd-any], libc0.3 (<= 2.32-1)
Suggests: glibc-doc, manpages-dev
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha ia64 hurd-any]
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha hurd-any]
Breaks: check (<< 0.15.2-2+b1) [s390x], ${libc-dev:Breaks}, libassimp-dev (<= 5.2.4~ds0-1), libbson-dev (<= 1.22.0-1), libdeal.ii-dev (<= 9.4.0-1), libdolfin-dev-common (<= 2019.2.0~git20220407.d29e24d-5), libeckit-dev (<= 1.20.0-1), libfclib-dev (<= 3.1.0+dfsg-2), libfltk1.3-dev (<= 1.3.8-4+b1), libinsighttoolkit4-dev (<= 4.13.3withdata-dfsg2-3+b1), libinsighttoolkit5-dev (<= 5.2.1-5+b1), libismrmrd-dev (<= 1.8.0-2), liblog4cplus-dev (<= 2.0.7-1), libmgl-dev (<= 8.0.1-2), libmimalloc2.0 (<= 2.0.6+ds-1), libminc-dev (<= 2.4.03-5), libmrpt-ros1bridge-dev (<= 1:2.4.9+ds-4+b2), libnetcdf-dev (<= 1:4.9.0-3), libnetcdf-mpi-dev (<= 1:4.9.0-1), libnetcdf-pnetcdf-dev (<= 1:4.9.0-1), libns3-dev (<= 3.36.1+dfsg-4), libopenms-dev (<= 2.6.0+cleaned1-3+b1), libtrilinos-amesos2-dev (<= 13.2.0-3), libtrilinos-amesos-dev (<= 13.2.0-3), libtrilinos-anasazi-dev (<= 13.2.0-3), libtrilinos-aztecoo-dev (<= 13.2.0-3), libtrilinos-belos-dev (<= 13.2.0-3), libtrilinos-epetra-dev (<= 13.2.0-3), libtrilinos-epetraext-dev (<= 13.2.0-3), libtrilinos-galeri-dev (<= 13.2.0-3), libtrilinos-ifpack2-dev (<= 13.2.0-3), libtrilinos-ifpack-dev (<= 13.2.0-3), libtrilinos-intrepid2-dev (<= 13.2.0-3), libtrilinos-intrepid-dev (<= 13.2.0-3), libtrilinos-isorropia-dev (<= 13.2.0-3), libtrilinos-kokkos-dev (<= 13.2.0-3), libtrilinos-kokkos-kernels-dev (<= 13.2.0-3), libtrilinos-komplex-dev (<= 13.2.0-3), libtrilinos-ml-dev (<= 13.2.0-3), libtrilinos-moertel-dev (<= 13.2.0-3), libtrilinos-muelu-dev (<= 13.2.0-3), libtrilinos-nox-dev (<= 13.2.0-3), libtrilinos-phalanx-dev (<= 13.2.0-3), libtrilinos-pike-dev (<= 13.2.0-3), libtrilinos-piro-dev (<= 13.2.0-3), libtrilinos-pliris-dev (<= 13.2.0-3), libtrilinos-rol-dev (<= 13.2.0-3), libtrilinos-rtop-dev (<= 13.2.0-3), libtrilinos-rythmos-dev (<= 13.2.0-3), libtrilinos-sacado-dev (<= 13.2.0-3), libtrilinos-shylu-dev (<= 13.2.0-3), libtrilinos-stokhos-dev (<= 13.2.0-3), libtrilinos-stratimikos-dev (<= 13.2.0-3), libtrilinos-teko-dev (<= 13.2.0-3), libtrilinos-teuchos-dev (<= 13.2.0-3), libtrilinos-thyra-dev (<= 13.2.0-3), libtrilinos-tpetra-dev (<= 13.2.0-3), libtrilinos-trilinoscouplings-dev (<= 13.2.0-3), libtrilinos-triutils-dev (<= 13.2.0-3), libtrilinos-xpetra-dev (<= 13.2.0-3), libtrilinos-zoltan2-dev (<= 13.2.0-3), libvisp-dev (<= 3.5.0-2+b1), libvotca-dev (<= 2022-3), libvtk6-dev (<= 6.3.0+dfsg2-8.1+b1), libvtk7-dev (<= 7.1.1+dfsg2-10.2), igblast (<= 1.19.0-1), libasyncns-dev (<= 0.8-6+b2), libatm1-dev (<= 1:2.5.1-4), libaws20-dev (<= 20.2-2+b1), libboinc-app-dev (<= 7.20.2+dfsg-1), libcups2-dev (<= 2.4.2-1), libdkim-dev (<= 1:1.0.21-4+b2), libghc-resolv-dev (<= 0.1.2.0-3), libghc-resolv-prof (<= 0.1.2.0-3), libglib2.0-dev (<= 2.72.3-1), libgloox-dev (<= 1.0.24-2+b1), libhesiod-dev (<= 3.2.1-3.1+b1), libinfinity-0.7-dev (<= 0.7.2-1+b1), libldap-dev (<= 2.5.12+dfsg-2), libloudmouth1-dev (<= 1.5.4-1), libmongoc-dev (<= 1.22.1-1), libmysqlclient-dev (<= 8.0.29-1), libnfsidmap-dev (<= 1:2.6.1-2), libola-dev (<= 0.10.8.nojsmin-2), libopenafs-dev (<= 1.8.8.1-3), libopendkim-dev (<= 2.11.0~beta2-7), libopendmarc-dev (<= 1.4.2-1), libopenzwave1.6-dev (<= 1.6.1914+ds-1), libpg-query-dev (<= 13-2.1.2-2), librbl-dev (<= 2.11.0~beta2-7), libre-dev (<= 1.1.0-1+b1), libshishi-dev (<= 1.0.2-11), libslurm-dev (<= 21.08.8.2-1), libsocksd0-dev (<= 1.4.2+dfsg-7+b4), libspf2-dev (<= 1.2.10-7.1+b1), libstrophe-dev (<= 0.12.1-2), libtaningia-dev (<= 0.2.2-2+b1), libvbr-dev (<= 2.11.0~beta2-7), open-vm-tools-dev (<= 2:12.0.5-2), pidgin-librvp (<= 0.9.7cvs-3), proftpd-dev (<= 1.3.7d+dfsg-2), slurm-wlm-basic-plugins-dev (<= 21.08.8.2-1), catch (<< 1.12.2-0.1), heimdal-multidev (<= 7.7.0+dfsg-4), binutils (<< 2.38)
Conflicts: libc6-dev, libc6.1-dev,
Description: GNU C Library: Development Libraries and Header Files
......
......@@ -36,7 +36,7 @@ Multi-Arch: same
Depends: @libc@ (= ${binary:Version}) <!stage1>, libc-dev-bin (= ${binary:Version}), ${misc:Depends}, linux-libc-dev [linux-any], gnumach-dev [hurd-any], hurd-dev (>= 20080607-3) [hurd-any] | hurd-headers-dev [hurd-any], ${libcrypt-dev:Depends}, ${rpcsvc-proto:Depends}
Replaces: hurd-dev (<< 20120408-3) [hurd-any], @libc@ (<= 2.32-1)
Suggests: glibc-doc, manpages-dev
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha ia64 hurd-any]
Provides: libc-dev (= ${binary:Version}), libc6-dev [alpha hurd-any]
Breaks: check (<< 0.15.2-2+b1) [s390x], ${libc-dev:Breaks}, libassimp-dev (<= 5.2.4~ds0-1), libbson-dev (<= 1.22.0-1), libdeal.ii-dev (<= 9.4.0-1), libdolfin-dev-common (<= 2019.2.0~git20220407.d29e24d-5), libeckit-dev (<= 1.20.0-1), libfclib-dev (<= 3.1.0+dfsg-2), libfltk1.3-dev (<= 1.3.8-4+b1), libinsighttoolkit4-dev (<= 4.13.3withdata-dfsg2-3+b1), libinsighttoolkit5-dev (<= 5.2.1-5+b1), libismrmrd-dev (<= 1.8.0-2), liblog4cplus-dev (<= 2.0.7-1), libmgl-dev (<= 8.0.1-2), libmimalloc2.0 (<= 2.0.6+ds-1), libminc-dev (<= 2.4.03-5), libmrpt-ros1bridge-dev (<= 1:2.4.9+ds-4+b2), libnetcdf-dev (<= 1:4.9.0-3), libnetcdf-mpi-dev (<= 1:4.9.0-1), libnetcdf-pnetcdf-dev (<= 1:4.9.0-1), libns3-dev (<= 3.36.1+dfsg-4), libopenms-dev (<= 2.6.0+cleaned1-3+b1), libtrilinos-amesos2-dev (<= 13.2.0-3), libtrilinos-amesos-dev (<= 13.2.0-3), libtrilinos-anasazi-dev (<= 13.2.0-3), libtrilinos-aztecoo-dev (<= 13.2.0-3), libtrilinos-belos-dev (<= 13.2.0-3), libtrilinos-epetra-dev (<= 13.2.0-3), libtrilinos-epetraext-dev (<= 13.2.0-3), libtrilinos-galeri-dev (<= 13.2.0-3), libtrilinos-ifpack2-dev (<= 13.2.0-3), libtrilinos-ifpack-dev (<= 13.2.0-3), libtrilinos-intrepid2-dev (<= 13.2.0-3), libtrilinos-intrepid-dev (<= 13.2.0-3), libtrilinos-isorropia-dev (<= 13.2.0-3), libtrilinos-kokkos-dev (<= 13.2.0-3), libtrilinos-kokkos-kernels-dev (<= 13.2.0-3), libtrilinos-komplex-dev (<= 13.2.0-3), libtrilinos-ml-dev (<= 13.2.0-3), libtrilinos-moertel-dev (<= 13.2.0-3), libtrilinos-muelu-dev (<= 13.2.0-3), libtrilinos-nox-dev (<= 13.2.0-3), libtrilinos-phalanx-dev (<= 13.2.0-3), libtrilinos-pike-dev (<= 13.2.0-3), libtrilinos-piro-dev (<= 13.2.0-3), libtrilinos-pliris-dev (<= 13.2.0-3), libtrilinos-rol-dev (<= 13.2.0-3), libtrilinos-rtop-dev (<= 13.2.0-3), libtrilinos-rythmos-dev (<= 13.2.0-3), libtrilinos-sacado-dev (<= 13.2.0-3), libtrilinos-shylu-dev (<= 13.2.0-3), libtrilinos-stokhos-dev (<= 13.2.0-3), libtrilinos-stratimikos-dev (<= 13.2.0-3), libtrilinos-teko-dev (<= 13.2.0-3), libtrilinos-teuchos-dev (<= 13.2.0-3), libtrilinos-thyra-dev (<= 13.2.0-3), libtrilinos-tpetra-dev (<= 13.2.0-3), libtrilinos-trilinoscouplings-dev (<= 13.2.0-3), libtrilinos-triutils-dev (<= 13.2.0-3), libtrilinos-xpetra-dev (<= 13.2.0-3), libtrilinos-zoltan2-dev (<= 13.2.0-3), libvisp-dev (<= 3.5.0-2+b1), libvotca-dev (<= 2022-3), libvtk6-dev (<= 6.3.0+dfsg2-8.1+b1), libvtk7-dev (<= 7.1.1+dfsg2-10.2), igblast (<= 1.19.0-1), libasyncns-dev (<= 0.8-6+b2), libatm1-dev (<= 1:2.5.1-4), libaws20-dev (<= 20.2-2+b1), libboinc-app-dev (<= 7.20.2+dfsg-1), libcups2-dev (<= 2.4.2-1), libdkim-dev (<= 1:1.0.21-4+b2), libghc-resolv-dev (<= 0.1.2.0-3), libghc-resolv-prof (<= 0.1.2.0-3), libglib2.0-dev (<= 2.72.3-1), libgloox-dev (<= 1.0.24-2+b1), libhesiod-dev (<= 3.2.1-3.1+b1), libinfinity-0.7-dev (<= 0.7.2-1+b1), libldap-dev (<= 2.5.12+dfsg-2), libloudmouth1-dev (<= 1.5.4-1), libmongoc-dev (<= 1.22.1-1), libmysqlclient-dev (<= 8.0.29-1), libnfsidmap-dev (<= 1:2.6.1-2), libola-dev (<= 0.10.8.nojsmin-2), libopenafs-dev (<= 1.8.8.1-3), libopendkim-dev (<= 2.11.0~beta2-7), libopendmarc-dev (<= 1.4.2-1), libopenzwave1.6-dev (<= 1.6.1914+ds-1), libpg-query-dev (<= 13-2.1.2-2), librbl-dev (<= 2.11.0~beta2-7), libre-dev (<= 1.1.0-1+b1), libshishi-dev (<= 1.0.2-11), libslurm-dev (<= 21.08.8.2-1), libsocksd0-dev (<= 1.4.2+dfsg-7+b4), libspf2-dev (<= 1.2.10-7.1+b1), libstrophe-dev (<= 0.12.1-2), libtaningia-dev (<= 0.2.2-2+b1), libvbr-dev (<= 2.11.0~beta2-7), open-vm-tools-dev (<= 2:12.0.5-2), pidgin-librvp (<= 0.9.7cvs-3), proftpd-dev (<= 1.3.7d+dfsg-2), slurm-wlm-basic-plugins-dev (<= 21.08.8.2-1), catch (<< 1.12.2-0.1), heimdal-multidev (<= 7.7.0+dfsg-4), binutils (<< 2.38)
Conflicts: @libc-dev-conflict@
Description: GNU C Library: Development Libraries and Header Files
......
......@@ -8,8 +8,7 @@ Build-Depends: gettext, dpkg (>= 1.18.7), dpkg-dev (>= 1.17.14), xz-utils, file,
mig-for-host (>= 1.8+git20200618-7~) [hurd-any], gnumach-dev (>= 2:1.8+git20200710-2~) [hurd-any],
hurd-dev (>= 1:0.9.git20201127-4~) [hurd-any] | hurd-headers-dev [hurd-any],
binutils-for-host (>= 2.38),
g++-12 <!cross>, g++-12 (>= 12.3.0-2) [alpha] <!cross>, g++-12-multilib [amd64 i386 mips mipsel mipsn32 mipsn32el mips64 mips64el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 s390x sparc sparc64 x32] <!nobiarch>,
@GPP_CROSS_DEP@
g++@DEB_GCC_VERSION@-for-host, g++@DEB_GCC_VERSION@-multilib [amd64 i386 mips mipsel mipsn32 mipsn32el mips64 mips64el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 s390x sparc sparc64 x32] <!nobiarch>,
python3:native,
libidn2-0 (>= 2.0.5~) <!nocheck>,
libc-bin (>= @DEB_VERSION_UPSTREAM@) <cross>,
......
......@@ -4,7 +4,7 @@ debian/local/etc/ld.so.conf.d etc
debian/local/etc/nsswitch.conf usr/share/libc-bin
debian/local/etc/nss etc/default
posix/gai.conf etc
sbin/ldconfig sbin
sbin/ldconfig usr/sbin
usr/bin/getconf
usr/bin/getent
usr/bin/iconv
......
# ldconfig must be executable even when the libc is not configured, and
# thus must be linked statically
statically-linked-binary sbin/ldconfig
shared-library-lacks-prerequisites [sbin/ldconfig]
statically-linked-binary usr/sbin/ldconfig
shared-library-lacks-prerequisites [usr/sbin/ldconfig]
# these manpages are provided by the manpages package
no-manual-page [sbin/ldconfig]
no-manual-page [usr/sbin/ldconfig]
no-manual-page [usr/bin/getent]
no-manual-page [usr/bin/iconv]
no-manual-page [usr/bin/ld.so]
......
......@@ -23,6 +23,12 @@ is_entry_ok() {
fi
}
if [ -z "${I18NPATH:-}" ]; then
if [ -d "${USER_LOCALES}" ]; then
I18NPATH="${USER_LOCALES%%/locales*}/"
fi
fi
echo "Generating locales (this might take a while)..."
while read -r locale charset; do
if [ -z "$locale" ] || [ "${locale#\#}" != "$locale" ]; then continue; fi
......@@ -46,7 +52,7 @@ while read -r locale charset; do
input="$USER_LOCALES/$input"
fi
fi
localedef -i "$input" -c -f "$charset" -A /usr/share/locale/locale.alias "$locale" || :
I18NPATH="${I18NPATH}" localedef -i "$input" -c -f "$charset" -A /usr/share/locale/locale.alias "$locale" || :
echo " done"
done < "$LOCALEGEN"
echo "Generation complete."
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 5/7] math: Provided copysignf128 for static libm on alpha,
s390, and sparcv9
Date: Tue, 2 Apr 2024 11:06:42 -0300
Message-Id: <20240402140644.2172819-6-adhemerval.zanella@linaro.org>
Checked with a static build for the affected ABIs.
---
sysdeps/ieee754/ldbl-64-128/s_copysignl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
index 11b42d04ba..80137847d3 100644
--- a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
+++ b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
@@ -1,10 +1,10 @@
#include <math_ldbl_opt.h>
#include <libm-alias-ldouble.h>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
long_double_symbol (libc, __copysignl, copysignl);
#endif
--
2.34.1
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 3/7] math: Fix i386 and m68k exp10 on static build
Date: Tue, 2 Apr 2024 11:06:40 -0300
Message-Id: <20240402140644.2172819-4-adhemerval.zanella@linaro.org>
The commit 08ddd26814 removed the static exp10 on i386 and m68k with an
empty w_exp10.c (required for the ABIs that uses the newly
implementation). This patch fixes by adding the required symbols on the
arch-specific w_exp{f}_compat.c implementation.
Checked on i686-linux-gnu and with a build for m68k-linux-gnu with
'make test t=math/test-{float,double}-exp10-static build-math-static-tests=yes'
---
sysdeps/i386/fpu/w_exp10_compat.c | 9 +++++++--
sysdeps/m68k/m680x0/fpu/w_exp10_compat.c | 9 +++++++--
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/sysdeps/i386/fpu/w_exp10_compat.c b/sysdeps/i386/fpu/w_exp10_compat.c
index b53455386e..49a0e03385 100644
--- a/sysdeps/i386/fpu/w_exp10_compat.c
+++ b/sysdeps/i386/fpu/w_exp10_compat.c
@@ -1,3 +1,8 @@
/* i386 provides an optimized __ieee754_exp10. */
-#define NO_COMPAT_NEEDED 1
-#include <math/w_exp10_compat.c>
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_exp10_compat.c>
+#else
+# include <math-type-macros-double.h>
+# include <w_exp10_template.c>
+#endif
diff --git a/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c b/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
index 0d3e718626..350f2e4b4d 100644
--- a/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
+++ b/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
@@ -1,3 +1,8 @@
/* m68k provides an optimized __ieee754_exp10. */
-#define NO_COMPAT_NEEDED 1
-#include <math/w_exp10_compat.c>
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_exp10_compat.c>
+#else
+# include <math-type-macros-double.h>
+# include <w_exp10_template.c>
+#endif
--
2.34.1
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 2/7] math: Fix i386 and m68k fmod/fmodf on static build (BZ
31488)
Date: Tue, 2 Apr 2024 11:06:39 -0300
Message-Id: <20240402140644.2172819-3-adhemerval.zanella@linaro.org>
The commit 16439f419b removed the static fmod/fmodf on i386 and m68k
with and empty w_fmod.c (required for the ABIs that uses the newly
implementation). This patch fixes by adding the required symbols on
the arch-specific w_fmod{f}_compat.c implementation.
To statically build fmod fails on some ABI (alpha, s390, sparc) because
it does not export the ldexpf128, this is also fixed by this patch.
Checked on i686-linux-gnu and with a build for m68k-linux-gnu with
'make test t=math/test-{float,double}-modf-static build-math-static-tests=yes'.
---
sysdeps/i386/fpu/w_fmod_compat.c | 7 ++++---
sysdeps/i386/fpu/w_fmodf_compat.c | 7 ++++---
sysdeps/ieee754/ldbl-opt/s_ldexpl.c | 4 ++--
sysdeps/m68k/m680x0/fpu/w_fmod_compat.c | 5 +++--
sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c | 7 ++++---
5 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/sysdeps/i386/fpu/w_fmod_compat.c b/sysdeps/i386/fpu/w_fmod_compat.c
index 5ac9995ffd..528bfc2a13 100644
--- a/sysdeps/i386/fpu/w_fmod_compat.c
+++ b/sysdeps/i386/fpu/w_fmod_compat.c
@@ -7,8 +7,9 @@
# define LIBM_SVID_COMPAT 1
# undef compat_symbol
# define compat_symbol(a, b, c, d)
-#endif
-#include <math/w_fmod_compat.c>
-#ifdef SHARED
+# include <math/w_fmod_compat.c>
libm_alias_double (__fmod_compat, fmod)
+#else
+#include <math-type-macros-double.h>
+#include <w_fmod_template.c>
#endif
diff --git a/sysdeps/i386/fpu/w_fmodf_compat.c b/sysdeps/i386/fpu/w_fmodf_compat.c
index cc417e07d3..5a61693e51 100644
--- a/sysdeps/i386/fpu/w_fmodf_compat.c
+++ b/sysdeps/i386/fpu/w_fmodf_compat.c
@@ -7,8 +7,9 @@
# define LIBM_SVID_COMPAT 1
# undef compat_symbol
# define compat_symbol(a, b, c, d)
-#endif
-#include <math/w_fmodf_compat.c>
-#ifdef SHARED
+# include <math/w_fmodf_compat.c>
libm_alias_float (__fmod_compat, fmod)
+#else
+#include <math-type-macros-float.h>
+#include <w_fmod_template.c>
#endif
diff --git a/sysdeps/ieee754/ldbl-opt/s_ldexpl.c b/sysdeps/ieee754/ldbl-opt/s_ldexpl.c
index 1afbe7d8ad..932cc4341c 100644
--- a/sysdeps/ieee754/ldbl-opt/s_ldexpl.c
+++ b/sysdeps/ieee754/ldbl-opt/s_ldexpl.c
@@ -17,13 +17,13 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
# define declare_mgen_alias(f,t)
#endif
#include <math-type-macros-ldouble.h>
#include <s_ldexp_template.c>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
long_double_symbol (libc, __ldexpl, ldexpl);
long_double_symbol (libc, __wrap_scalbnl, scalbnl);
#endif
diff --git a/sysdeps/m68k/m680x0/fpu/w_fmod_compat.c b/sysdeps/m68k/m680x0/fpu/w_fmod_compat.c
index 527d4fbed2..57f38091e6 100644
--- a/sysdeps/m68k/m680x0/fpu/w_fmod_compat.c
+++ b/sysdeps/m68k/m680x0/fpu/w_fmod_compat.c
@@ -7,8 +7,9 @@
# define LIBM_SVID_COMPAT 1
# undef compat_symbol
# define compat_symbol(a, b, c, d)
-#endif
#include <math/w_fmod_compat.c>
-#ifdef SHARED
libm_alias_double (__fmod_compat, fmod)
+#else
+#include <math-type-macros-double.h>
+#include <w_fmod_template.c>
#endif
diff --git a/sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c b/sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c
index 5043586b91..88db07f443 100644
--- a/sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c
+++ b/sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c
@@ -7,8 +7,9 @@
# define LIBM_SVID_COMPAT 1
# undef compat_symbol
# define compat_symbol(a, b, c, d)
-#endif
-#include <math/w_fmodf_compat.c>
-#ifdef SHARED
+# include <math/w_fmodf_compat.c>
libm_alias_float (__fmod_compat, fmod)
+#else
+#include <math-type-macros-float.h>
+#include <w_fmod_template.c>
#endif
--
2.34.1
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 6/7] math: Provide frexpf128 for static libm on alpha, s390,
and sparcv9
Date: Tue, 2 Apr 2024 11:06:43 -0300
Message-Id: <20240402140644.2172819-7-adhemerval.zanella@linaro.org>
hecked with a build for the affected ABIs.
---
sysdeps/ieee754/ldbl-64-128/s_frexpl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/ieee754/ldbl-64-128/s_frexpl.c b/sysdeps/ieee754/ldbl-64-128/s_frexpl.c
index 73ac41e40c..f5f7d349f7 100644
--- a/sysdeps/ieee754/ldbl-64-128/s_frexpl.c
+++ b/sysdeps/ieee754/ldbl-64-128/s_frexpl.c
@@ -1,10 +1,10 @@
#include <math_ldbl_opt.h>
#include <libm-alias-ldouble.h>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_frexpl.c>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
long_double_symbol (libc, __frexpl, frexpl);
#endif
--
2.34.1
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 4/7] math: Fix isnanf128 static build
Date: Tue, 2 Apr 2024 11:06:41 -0300
Message-Id: <20240402140644.2172819-5-adhemerval.zanella@linaro.org>
Some static implementation of float128 routines might call __isnanf128,
which is not provided by the static object.
Checked on x86_64-linux-gnu.
---
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
--
2.34.1
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Subject: [PATCH v3 7/7] math: Provide modf128 for static libm on alpha, s390,
and sparcv9
Date: Tue, 2 Apr 2024 11:06:44 -0300
Message-Id: <20240402140644.2172819-8-adhemerval.zanella@linaro.org>
Checked with a build for the affected ABIs
---
sysdeps/ieee754/ldbl-64-128/s_modfl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/ieee754/ldbl-64-128/s_modfl.c b/sysdeps/ieee754/ldbl-64-128/s_modfl.c
index 7d7aeae111..ba3d31334a 100644
--- a/sysdeps/ieee754/ldbl-64-128/s_modfl.c
+++ b/sysdeps/ieee754/ldbl-64-128/s_modfl.c
@@ -1,10 +1,10 @@
#include <math_ldbl_opt.h>
#include <libm-alias-ldouble.h>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_modfl.c>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
long_double_symbol (libc, __modfl, modfl);
#endif
--
2.34.1
Temporarily remove bits/math-vector.h as it causes a few packages to FTBFS:
- #1070441 cmbc: arm64 FTBFS with glibc 2.38
- #1070443 aspectc++: arm64 FTBFS with glibc 2.38
- #1070444 cxref: arm64 FTBFS with glibc 2.38
- #1070446 rocm-hipamd: arm64 FTBFS with glibc 2.38
See upstream bug https://sourceware.org/bugzilla/show_bug.cgi?id=30909
diff --git a/sysdeps/aarch64/fpu/bits/math-vector.h b/sysdeps/aarch64/fpu/bits/math-vector.h
deleted file mode 100644
index 04837bdcd7..0000000000
--- a/sysdeps/aarch64/fpu/bits/math-vector.h
+++ /dev/null
@@ -1,188 +0,0 @@
-/* Platform-specific SIMD declarations of math functions.
-
- Copyright (C) 2023-2024 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/>. */
-
-#ifndef _MATH_H
-# error "Never include <bits/math-vector.h> directly;\
- include <math.h> instead."
-#endif
-
-/* Get default empty definitions for simd declarations. */
-#include <bits/libm-simd-decl-stubs.h>
-
-#if defined __aarch64__ && defined __FAST_MATH__ && __GNUC_PREREQ (6, 0)
-/* Requires GCC >= 6 for __attribute__ ((__simd__)). */
-# define __DECL_SIMD_aarch64 __attribute__ ((__simd__ ("notinbranch"), const))
-
-# undef __DECL_SIMD_acos
-# define __DECL_SIMD_acos __DECL_SIMD_aarch64
-# undef __DECL_SIMD_acosf
-# define __DECL_SIMD_acosf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_asin
-# define __DECL_SIMD_asin __DECL_SIMD_aarch64
-# undef __DECL_SIMD_asinf
-# define __DECL_SIMD_asinf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_atan
-# define __DECL_SIMD_atan __DECL_SIMD_aarch64
-# undef __DECL_SIMD_atanf
-# define __DECL_SIMD_atanf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_atan2
-# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_atan2f
-# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_cos
-# define __DECL_SIMD_cos __DECL_SIMD_aarch64
-# undef __DECL_SIMD_cosf
-# define __DECL_SIMD_cosf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_exp
-# define __DECL_SIMD_exp __DECL_SIMD_aarch64
-# undef __DECL_SIMD_expf
-# define __DECL_SIMD_expf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_exp10
-# define __DECL_SIMD_exp10 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_exp10f
-# define __DECL_SIMD_exp10f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_exp2
-# define __DECL_SIMD_exp2 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_exp2f
-# define __DECL_SIMD_exp2f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_expm1
-# define __DECL_SIMD_expm1 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_expm1f
-# define __DECL_SIMD_expm1f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log
-# define __DECL_SIMD_log __DECL_SIMD_aarch64
-# undef __DECL_SIMD_logf
-# define __DECL_SIMD_logf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log10
-# define __DECL_SIMD_log10 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log10f
-# define __DECL_SIMD_log10f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log1p
-# define __DECL_SIMD_log1p __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log1pf
-# define __DECL_SIMD_log1pf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log2
-# define __DECL_SIMD_log2 __DECL_SIMD_aarch64
-# undef __DECL_SIMD_log2f
-# define __DECL_SIMD_log2f __DECL_SIMD_aarch64
-# undef __DECL_SIMD_sin
-# define __DECL_SIMD_sin __DECL_SIMD_aarch64
-# undef __DECL_SIMD_sinf
-# define __DECL_SIMD_sinf __DECL_SIMD_aarch64
-# undef __DECL_SIMD_tan
-# define __DECL_SIMD_tan __DECL_SIMD_aarch64
-# undef __DECL_SIMD_tanf
-# define __DECL_SIMD_tanf __DECL_SIMD_aarch64
-#endif
-
-#if __GNUC_PREREQ(9, 0)
-# define __ADVSIMD_VEC_MATH_SUPPORTED
-typedef __Float32x4_t __f32x4_t;
-typedef __Float64x2_t __f64x2_t;
-#elif __glibc_clang_prereq(8, 0)
-# define __ADVSIMD_VEC_MATH_SUPPORTED
-typedef __attribute__ ((__neon_vector_type__ (4))) float __f32x4_t;
-typedef __attribute__ ((__neon_vector_type__ (2))) double __f64x2_t;
-#endif
-
-#if __GNUC_PREREQ(10, 0) || __glibc_clang_prereq(11, 0)
-# define __SVE_VEC_MATH_SUPPORTED
-typedef __SVFloat32_t __sv_f32_t;
-typedef __SVFloat64_t __sv_f64_t;
-typedef __SVBool_t __sv_bool_t;
-#endif
-
-/* If vector types and vector PCS are unsupported in the working
- compiler, no choice but to omit vector math declarations. */
-
-#ifdef __ADVSIMD_VEC_MATH_SUPPORTED
-
-# define __vpcs __attribute__ ((__aarch64_vector_pcs__))
-
-__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t);
-__vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t);
-
-__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t);
-__vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t);
-
-# undef __ADVSIMD_VEC_MATH_SUPPORTED
-#endif /* __ADVSIMD_VEC_MATH_SUPPORTED */
-
-#ifdef __SVE_VEC_MATH_SUPPORTED
-
-__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t);
-__sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t);
-
-__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t);
-__sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t);
-
-# undef __SVE_VEC_MATH_SUPPORTED
-#endif /* __SVE_VEC_MATH_SUPPORTED */
......@@ -8,6 +8,45 @@ index 0000000000..d4e33f2df3
@@ -0,0 +1,2 @@
+For the GNU C Library Security Advisories, see the git master branch:
+https://sourceware.org/git/?p=glibc.git;a=tree;f=advisories;hb=HEAD
diff --git a/Makeconfig b/Makeconfig
index 85e00cef94..522182abdc 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -586,10 +586,13 @@ link-libc-rpath-link = -Wl,-rpath-link=$(rpath-link)
# before the expansion of LDLIBS-* variables).
# Tests use -Wl,-rpath instead of -Wl,-rpath-link for
-# build-hardcoded-path-in-tests.
+# build-hardcoded-path-in-tests. Add -Wl,--disable-new-dtags to force
+# DT_RPATH instead of DT_RUNPATH which only applies to DT_NEEDED entries
+# in the executable and doesn't applies to DT_NEEDED entries in shared
+# libraries which are loaded via DT_NEEDED entries in the executable.
ifeq (yes,$(build-hardcoded-path-in-tests))
-link-libc-tests-rpath-link = $(link-libc-rpath)
-link-test-modules-rpath-link = $(link-libc-rpath)
+link-libc-tests-rpath-link = $(link-libc-rpath) -Wl,--disable-new-dtags
+link-test-modules-rpath-link = $(link-libc-rpath) -Wl,--disable-new-dtags
else
link-libc-tests-rpath-link = $(link-libc-rpath-link)
link-test-modules-rpath-link =
diff --git a/Makefile b/Makefile
index 7052b46df8..2e351c0321 100644
--- a/Makefile
+++ b/Makefile
@@ -577,6 +577,13 @@ $(objpfx)lint-makefiles.out: scripts/lint-makefiles.sh
$(SHELL) $< "$(PYTHON)" `pwd` > $@ ; \
$(evaluate-test)
+# Link libc.a as a whole to verify that it does not contain multiple
+# definitions of any symbols.
+tests-special += $(objpfx)link-static-libc.out
+$(objpfx)link-static-libc.out:
+ $(LINK.o) $(whole-archive) -r $(objpfx)libc.a -o /dev/null > $@ 2>&1; \
+ $(evaluate-test)
+
# Print test summary for tests in $1 .sum file;
# $2 is optional test identifier.
# Fail if there are unexpected failures in the test results.
diff --git a/advisories/GLIBC-SA-2023-0001 b/advisories/GLIBC-SA-2023-0001
deleted file mode 100644
index 3d19c91b6a..0000000000
......@@ -522,6 +561,65 @@ index 2f502c8b0d..451932dd03 100644
enum dso_sort_algorithm _dl_dso_sort_algo;
diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c
index 03e1a68675..614ac9c047 100644
--- a/elf/dl-tunables.c
+++ b/elf/dl-tunables.c
@@ -32,6 +32,7 @@
#include <ldsodefs.h>
#include <array_length.h>
#include <dl-minimal-malloc.h>
+#include <dl-symbol-redir-ifunc.h>
#define TUNABLES_INTERNAL 1
#include "dl-tunables.h"
@@ -223,6 +224,7 @@ parse_tunables_string (const char *valstring, struct tunable_toset_t *tunables)
{
tunables[ntunables++] =
(struct tunable_toset_t) { cur, value, p - value };
+
break;
}
}
@@ -234,23 +236,27 @@ parse_tunables_string (const char *valstring, struct tunable_toset_t *tunables)
static void
parse_tunables (const char *valstring)
{
- struct tunable_toset_t tunables[tunables_list_size];
- int ntunables = parse_tunables_string (valstring, tunables);
- if (ntunables == -1)
+ struct tunable_toset_t tunables[tunables_list_size] = { 0 };
+ if (parse_tunables_string (valstring, tunables) == -1)
{
_dl_error_printf (
"WARNING: ld.so: invalid GLIBC_TUNABLES `%s': ignored.\n", valstring);
return;
}
- for (int i = 0; i < ntunables; i++)
- if (!tunable_initialize (tunables[i].t, tunables[i].value,
- tunables[i].len))
- _dl_error_printf ("WARNING: ld.so: invalid GLIBC_TUNABLES value `%.*s' "
- "for option `%s': ignored.\n",
- (int) tunables[i].len,
- tunables[i].value,
- tunables[i].t->name);
+ for (int i = 0; i < tunables_list_size; i++)
+ {
+ if (tunables[i].t == NULL)
+ continue;
+
+ if (!tunable_initialize (tunables[i].t, tunables[i].value,
+ tunables[i].len))
+ _dl_error_printf ("WARNING: ld.so: invalid GLIBC_TUNABLES value `%.*s' "
+ "for option `%s': ignored.\n",
+ (int) tunables[i].len,
+ tunables[i].value,
+ tunables[i].t->name);
+ }
}
/* Initialize the tunables list from the environment. For now we only use the
diff --git a/elf/elf.h b/elf/elf.h
index 455731663c..1c394c64cd 100644
--- a/elf/elf.h
......@@ -825,6 +923,104 @@ index 0000000000..6d3031dc5f
+ AFTER_TLSDESC_CALL ();
+ return ret;
+}
diff --git a/elf/tst-tunables.c b/elf/tst-tunables.c
index 095b5c81d9..dff34ed748 100644
--- a/elf/tst-tunables.c
+++ b/elf/tst-tunables.c
@@ -17,6 +17,10 @@
<https://www.gnu.org/licenses/>. */
#include <array_length.h>
+/* The test uses the tunable_list size, which is only exported for
+ ld.so. This will result in a copy of tunable_list, which is ununsed by
+ the test itself. */
+#define TUNABLES_INTERNAL 1
#include <dl-tunables.h>
#include <getopt.h>
#include <intprops.h>
@@ -24,12 +28,13 @@
#include <stdlib.h>
#include <support/capture_subprocess.h>
#include <support/check.h>
+#include <support/support.h>
static int restart;
#define CMDLINE_OPTIONS \
{ "restart", no_argument, &restart, 1 },
-static const struct test_t
+static struct test_t
{
const char *name;
const char *value;
@@ -284,6 +289,29 @@ static const struct test_t
0,
0,
},
+ /* Also check for repeated tunables with a count larger than the total number
+ of tunables. */
+ {
+ "GLIBC_TUNABLES",
+ NULL,
+ 2,
+ 0,
+ 0,
+ },
+ {
+ "GLIBC_TUNABLES",
+ NULL,
+ 1,
+ 0,
+ 0,
+ },
+ {
+ "GLIBC_TUNABLES",
+ NULL,
+ 0,
+ 0,
+ 0,
+ },
};
static int
@@ -327,6 +355,37 @@ do_test (int argc, char *argv[])
spargv[i] = NULL;
}
+ /* Create a tunable line with the duplicate values with a total number
+ larger than the different number of tunables. */
+ {
+ enum { tunables_list_size = array_length (tunable_list) };
+ const char *value = "";
+ for (int i = 0; i < tunables_list_size; i++)
+ value = xasprintf ("%sglibc.malloc.check=2%c",
+ value,
+ i == (tunables_list_size - 1) ? '\0' : ':');
+ tests[33].value = value;
+ }
+ /* Same as before, but the last tunable values is differen than the
+ rest. */
+ {
+ enum { tunables_list_size = array_length (tunable_list) };
+ const char *value = "";
+ for (int i = 0; i < tunables_list_size - 1; i++)
+ value = xasprintf ("%sglibc.malloc.check=2:", value);
+ value = xasprintf ("%sglibc.malloc.check=1", value);
+ tests[34].value = value;
+ }
+ /* Same as before, but with an invalid last entry. */
+ {
+ enum { tunables_list_size = array_length (tunable_list) };
+ const char *value = "";
+ for (int i = 0; i < tunables_list_size - 1; i++)
+ value = xasprintf ("%sglibc.malloc.check=2:", value);
+ value = xasprintf ("%sglibc.malloc.check=1=1", value);
+ tests[35].value = value;
+ }
+
for (int i = 0; i < array_length (tests); i++)
{
snprintf (nteststr, sizeof nteststr, "%d", i);
diff --git a/iconvdata/Makefile b/iconvdata/Makefile
index ea019ce5c0..7196a8744b 100644
--- a/iconvdata/Makefile
......@@ -3262,6 +3458,18 @@ index 2081eeb4d4..fe95037be3 100644
}
if (IS_THUNDERX (midr))
diff --git a/sysdeps/aarch64/multiarch/memset_generic.S b/sysdeps/aarch64/multiarch/memset_generic.S
index 81748bdbce..e125a5ed85 100644
--- a/sysdeps/aarch64/multiarch/memset_generic.S
+++ b/sysdeps/aarch64/multiarch/memset_generic.S
@@ -33,3 +33,7 @@
#endif
#include <../memset.S>
+
+#if IS_IN (rtld)
+strong_alias (memset, __memset_generic)
+#endif
diff --git a/sysdeps/aarch64/preconfigure b/sysdeps/aarch64/preconfigure
index d9bd1f8558..19657b627b 100644
--- a/sysdeps/aarch64/preconfigure
......@@ -4106,6 +4314,45 @@ index 84e6686eba..f2139fc172 100644
float128: 1
ldouble: 1
diff --git a/sysdeps/i386/i586/memcpy.S b/sysdeps/i386/i586/memcpy.S
index 3e26f112d6..79856d498a 100644
--- a/sysdeps/i386/i586/memcpy.S
+++ b/sysdeps/i386/i586/memcpy.S
@@ -26,7 +26,7 @@
#define LEN SRC+4
.text
-#if defined PIC && IS_IN (libc)
+#if defined SHARED && IS_IN (libc)
ENTRY (__memcpy_chk)
movl 12(%esp), %eax
cmpl %eax, 16(%esp)
diff --git a/sysdeps/i386/i686/memmove.S b/sysdeps/i386/i686/memmove.S
index f230359ad6..effd958120 100644
--- a/sysdeps/i386/i686/memmove.S
+++ b/sysdeps/i386/i686/memmove.S
@@ -29,7 +29,7 @@
#define SRC DEST+4
#define LEN SRC+4
-#if defined PIC && IS_IN (libc)
+#if defined SHARED && IS_IN (libc)
ENTRY_CHK (__memmove_chk)
movl 12(%esp), %eax
cmpl %eax, 16(%esp)
diff --git a/sysdeps/i386/i686/memset.S b/sysdeps/i386/i686/memset.S
index f02f5a6df7..ab06771ea0 100644
--- a/sysdeps/i386/i686/memset.S
+++ b/sysdeps/i386/i686/memset.S
@@ -27,7 +27,7 @@
#define LEN CHR+4
.text
-#if defined PIC && IS_IN (libc)
+#if defined SHARED && IS_IN (libc)
ENTRY_CHK (__memset_chk)
movl 12(%esp), %eax
cmpl %eax, 16(%esp)
diff --git a/sysdeps/i386/i686/multiarch/memrchr-c.c b/sysdeps/i386/i686/multiarch/memrchr-c.c
index ef7bbbe792..20bfdf3af3 100644
--- a/sysdeps/i386/i686/multiarch/memrchr-c.c
......@@ -4885,6 +5132,15 @@ index 2f66f10d72..ea103e5970 100644
# define __WORDSIZE32_PTRDIFF_LONG 0
#endif
+#define __WORDSIZE_TIME64_COMPAT32 1
diff --git a/sysdeps/sparc/sparc64/rtld-memset.c b/sysdeps/sparc/sparc64/rtld-memset.c
index 55f3835790..a19202a620 100644
--- a/sysdeps/sparc/sparc64/rtld-memset.c
+++ b/sysdeps/sparc/sparc64/rtld-memset.c
@@ -1 +1,4 @@
#include <string/memset.c>
+#if IS_IN(rtld)
+strong_alias (memset, __memset_ultra1)
+#endif
diff --git a/sysdeps/sparc/utmp-size.h b/sysdeps/sparc/utmp-size.h
new file mode 100644
index 0000000000..8f21ebe1b6
......@@ -9047,6 +9303,23 @@ index 9984c3ca0f..97839a2248 100644
4 VEC stores and store 4 * VEC at a time until done. */
#include <sysdep.h>
diff --git a/sysdeps/x86_64/multiarch/wcsncat-evex.S b/sysdeps/x86_64/multiarch/wcsncat-evex.S
index 392215950a..10bfb0a531 100644
--- a/sysdeps/x86_64/multiarch/wcsncat-evex.S
+++ b/sysdeps/x86_64/multiarch/wcsncat-evex.S
@@ -1,9 +1,9 @@
-#ifndef WCSCAT
-# define WCSCAT __wcsncat_evex
+#ifndef WCSNCAT
+# define WCSNCAT __wcsncat_evex
#endif
#define USE_AS_WCSCPY
#define USE_AS_STRCAT
-#define STRNCAT WCSCAT
+#define STRNCAT WCSNCAT
#include "strncat-evex.S"
diff --git a/sysdeps/x86_64/tst-gnu2-tls2mod1.S b/sysdeps/x86_64/tst-gnu2-tls2mod1.S
new file mode 100644
index 0000000000..1d636669ba
......
......@@ -23,6 +23,8 @@ arm/local-sigaction.diff
arm/unsubmitted-ldso-multilib.diff
arm/local-arm-futex.diff
arm64/local-remove-aarch64-bits-math-vector-h.diff
hppa/local-inlining.diff
# Committed for 2.40
......@@ -93,3 +95,9 @@ any/local-cudacc-float128.diff
any/local-test-install.diff
any/local-cross.patch
any/git-test-epoll.diff
any/submitted-static-copysignf128.diff
any/submitted-static-fmod-fmodf.diff
any/submitted-static-frexpf128.diff
any/submitted-static-isnanf128.diff
any/submitted-static-modf128.diff
any/submitted-static-exp10.diff
......@@ -97,7 +97,7 @@ BASE_CC = gcc
BASE_CXX = g++
BASE_MIG = mig
# If you override DEB_GCC_VERSION, consider adding DEB_CFLAGS_APPEND=-Wno-error.
DEB_GCC_VERSION ?= -12
DEB_GCC_VERSION ?= -13
RUN_TESTSUITE = yes
TIMEOUTFACTOR = 25
......
......@@ -4,7 +4,7 @@ libc6_archs := amd64 arc arm64 armel armhf hppa i386 loong64 m68k \
mips mipsel mipsn32 mipsn32el mips64 mips64el mipsr6 mipsr6el \
mipsn32r6 mipsn32r6el mips64r6 mips64r6el nios2 powerpc ppc64 ppc64el riscv64 \
sparc sparc64 s390x sh3 sh4 x32
libc6_1_archs := alpha ia64
libc6_1_archs := alpha
control_deps := $(wildcard debian/control.in/*) $(addprefix debian/control.in/, $(libc_packages))
triggers := binutils, linux-libc-dev [linux-any], $(BASE_CC)$(DEB_GCC_VERSION)
......@@ -15,8 +15,6 @@ $(patsubst %,debian/control.in/%,$(libc_packages)) :: debian/control.in/% : debi
-e "s%@libc-dev-conflict@%$(foreach arch,$(filter-out $*,$(libc_packages)),$(arch)-dev,)%g" \
< $< > $@
GPP_CROSS_DEP = $(foreach a,$(libc6_archs) $(libc6_1_archs),g++$(DEB_GCC_VERSION)-$(shell dpkg-architecture -f -a$(a) -qDEB_HOST_GNU_TYPE | tr _ -) [$(a)] <cross>,)
debian/control: $(stamp)control
$(stamp)control: debian/rules.d/control.mk $(control_deps) debian/tests/control.in
......@@ -40,7 +38,7 @@ $(stamp)control: debian/rules.d/control.mk $(control_deps) debian/tests/control.
cat debian/control.in/mipsn32 >> $@T
cat debian/control.in/mips64 >> $@T
cat debian/control.in/x32 >> $@T
sed -e 's%@libc@%$(libc)%g' -e 's%@DEB_VERSION_UPSTREAM@%$(DEB_VERSION_UPSTREAM)%g' -e 's%@GPP_CROSS_DEP@%$(GPP_CROSS_DEP)%g' < $@T > debian/control
sed -e 's%@libc@%$(libc)%g' -e 's%@DEB_VERSION_UPSTREAM@%$(DEB_VERSION_UPSTREAM)%g' -e 's%@DEB_GCC_VERSION@%$(DEB_GCC_VERSION)%g' < $@T > debian/control
rm $@T
# And generate the tests control file with the current GCC
......
# configuration options for all flavours
libc = libc6.1
Tests: rebuild
Depends: @builddeps@, fakeroot, binutils, linux-libc-dev [linux-any], gcc-12
Architecture: !arm64
Depends: @builddeps@, fakeroot, binutils, linux-libc-dev [linux-any], gcc-13
Restrictions: allow-stderr