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 (10)
Showing
with 1209 additions and 382 deletions
glibc (2.39-4) UNRELEASED; urgency=medium
* debian/patches/git-updates.diff: update from upstream stable branch:
- debian/patches/any/submitted-static-copysignf128.diff: upstreamed.
- debian/patches/any/submitted-static-fmod-fmodf.diff: upstreamed.
- debian/patches/any/submitted-static-frexpf128.diff: upstreamed.
- debian/patches/any/submitted-static-isnanf128.diff: upstreamed.
- debian/patches/any/submitted-static-modf128.diff: upstreamed.
- debian/patches/any/submitted-static-exp10.diff: upstreamed.
-- Aurelien Jarno <aurel32@debian.org> Thu, 04 Jul 2024 22:09:52 +0200
glibc (2.39-3.1) experimental; urgency=medium
 
* Non-maintainer upload acked by Aurelien Jarno.
......@@ -15,6 +27,42 @@ glibc (2.39-3.1) experimental; urgency=medium
 
-- Helmut Grohne <helmut@subdivi.de> Thu, 06 Jun 2024 09:18:03 +0200
 
glibc (2.38-14) unstable; urgency=medium
[ Aurelien Jarno ]
* debian/debhelper.in/libc.postinst: drop code to restart init systems.
Closes: #1074607.
* debian/control.in/libc: add breaks against systemd and sysvinit versions
not using the libc-upgrade trigger.
* debian/control.in/libc: add breaks against base-files version not
providing /usr-merge aliasing symlinks. Closes: #1074368.
-- Aurelien Jarno <aurel32@debian.org> Thu, 04 Jul 2024 21:53:20 +0200
glibc (2.38-13) unstable; urgency=medium
* debian/debhelper.in/libc-udeb.install.hurd-amd64: Complete DEP17.
* debian/debhelper.in/libc-udeb.install.hurd-i386: Complete DEP17.
* debian/patches/hurd-i386/git-xattr.diff: Fix xattr corner cases.
-- Samuel Thibault <sthibault@debian.org> Mon, 10 Jun 2024 22:25:19 +0200
glibc (2.38-12.1) unstable; urgency=medium
* Non-maintainer upload acked by Aurelien Jarno.
* Move all aliased files including the dynamic loader to /usr. (DEP17,
Closes: #1061248)
+ Install a protective diversion for the dynamic loader to avoid accidental
deletion (DEP17 P1 M8).
+ Manage the dynamic loader symlink via maintainer scripts and triggers
in multilib packages to avoid interaction of Replaces and /usr-move.
+ Avoid a versioned dependency on base-files.
- Continue managing toplevel multilib aliasing links for the time being.
- Install protective diversions for aliasing symlinks that base-files
would also install in case libc is upgraded first. (DEP17 P9 M4)
-- Helmut Grohne <helmut@subdivi.de> Thu, 06 Jun 2024 09:18:03 +0200
glibc (2.39-3) experimental; urgency=medium
 
[ Aurelien Jarno ]
......
......@@ -164,7 +164,7 @@ Recommends: libidn2-0 (>= 2.0.5~)
Suggests: glibc-doc, debconf | debconf-2.0, libc-l10n, locales [!hurd-any], libnss-nis, libnss-nisplus
Provides: libc6-sparcv9b [sparc sparc64], libc0.3-i686 [hurd-i386], libc6-i686 [i386]
Conflicts: libc6-i686 [i386], libc6.1-alphaev67 [alpha]
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~)
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~), systemd (<< 256~rc4-1~), sysvinit (<< 3.09-2~), base-files (<< 13.3~)
Replaces: libc6-amd64 [amd64],
libc6-i386 [i386],
libc0.3-i686 [hurd-i386],
......@@ -236,7 +236,7 @@ Recommends: libidn2-0 (>= 2.0.5~)
Suggests: glibc-doc, debconf | debconf-2.0, libc-l10n, locales [!hurd-any], libnss-nis, libnss-nisplus
Provides: libc6-sparcv9b [sparc sparc64], libc0.3-i686 [hurd-i386], libc6-i686 [i386]
Conflicts: libc6-i686 [i386], libc6.1-alphaev67 [alpha]
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~)
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~), systemd (<< 256~rc4-1~), sysvinit (<< 3.09-2~), base-files (<< 13.3~)
Replaces: libc6-amd64 [amd64],
libc6-i386 [i386],
libc0.3-i686 [hurd-i386],
......@@ -308,7 +308,7 @@ Recommends: libidn2-0 (>= 2.0.5~)
Suggests: glibc-doc, debconf | debconf-2.0, libc-l10n, locales [!hurd-any], libnss-nis, libnss-nisplus
Provides: libc6-sparcv9b [sparc sparc64], libc0.3-i686 [hurd-i386], libc6-i686 [i386]
Conflicts: libc6-i686 [i386], libc6.1-alphaev67 [alpha]
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~)
Breaks: nscd (<< 2.39), locales (<< 2.39), locales-all (<< 2.39), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~), systemd (<< 256~rc4-1~), sysvinit (<< 3.09-2~), base-files (<< 13.3~)
Replaces: libc6-amd64 [amd64],
libc6-i386 [i386],
libc0.3-i686 [hurd-i386],
......
......@@ -8,7 +8,7 @@ Recommends: libidn2-0 (>= 2.0.5~)
Suggests: glibc-doc, debconf | debconf-2.0, libc-l10n, locales [!hurd-any], libnss-nis, libnss-nisplus
Provides: libc6-sparcv9b [sparc sparc64], libc0.3-i686 [hurd-i386], libc6-i686 [i386]
Conflicts: libc6-i686 [i386], libc6.1-alphaev67 [alpha]
Breaks: nscd (<< @DEB_VERSION_UPSTREAM@), locales (<< @DEB_VERSION_UPSTREAM@), locales-all (<< @DEB_VERSION_UPSTREAM@), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~)
Breaks: nscd (<< @DEB_VERSION_UPSTREAM@), locales (<< @DEB_VERSION_UPSTREAM@), locales-all (<< @DEB_VERSION_UPSTREAM@), gnumach-image-1.8-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-486-dbg (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486 (<< 2:1.8+git20210923~), gnumach-image-1.8-xen-486-dbg (<< 2:1.8+git20210923~), hurd (<< 1:0.9.git20220301-2), python3-iptables (<< 1.0.0-2), fakechroot (<< 2.19-3.5), tinydns (<< 1:1.05-14), chrony (<< 4.2-3~), valgrind (<< 1:3.19.0-1~), firefox (<< 91~), firefox-esr (<< 91~), systemd (<< 256~rc4-1~), sysvinit (<< 3.09-2~), base-files (<< 13.3~)
Replaces: libc6-amd64 [amd64],
libc6-i386 [i386],
libc0.3-i686 [hurd-i386],
......
lib*/ld*.so*
lib/*/ld*.so*
lib/*/libm.so.*
lib/*/libmvec.so.*
lib/*/libdl.so.*
lib/*/libresolv.so.*
lib/*/libc.so.*
lib/*/librt.so.*
lib/*/libpthread.so.*
lib/*/libnss_dns.so.*
lib/*/libnss_files.so.*
lib/*/libmachuser.so.*
lib/*/libhurduser.so.*
RTLDDIR/ld*.so* /usrRTLDDIR
SLIBDIR/ld*.so* /usrSLIBDIR
SLIBDIR/libm.so.* /usrSLIBDIR
SLIBDIR/libmvec.so.* /usrSLIBDIR
SLIBDIR/libdl.so.* /usrSLIBDIR
SLIBDIR/libresolv.so.* /usrSLIBDIR
SLIBDIR/libc.so.* /usrSLIBDIR
SLIBDIR/librt.so.* /usrSLIBDIR
SLIBDIR/libpthread.so.* /usrSLIBDIR
SLIBDIR/libnss_dns.so.* /usrSLIBDIR
SLIBDIR/libnss_files.so.* /usrSLIBDIR
SLIBDIR/libmachuser.so.* /usrSLIBDIR
lib*/ld*.so*
RTLDDIR/ld*.so* /usrRTLDDIR
SLIBDIR/ld*.so* /usrSLIBDIR
SLIBDIR/libm.so.* /usrSLIBDIR
......
......@@ -147,41 +147,6 @@ then
fi # end upgrading and $preversion lt DEB_VERSION_UPSTREAM
fi # Upgrading
# Restart init. Currently handles chroots, systemd and upstart, and
# assumes anything else is going to not fail at behaving like
# sysvinit:
TELINIT=yes
if [ -n "${DPKG_ROOT:-}" ]; then
# Do not re-exec init if we are operating on a chroot from outside:
TELINIT=no
elif ischroot 2>/dev/null; then
# Don't bother trying to re-exec init from a chroot:
TELINIT=no
elif [ -d /run/systemd/system ]; then
# Restart systemd on upgrade, but carefully.
# The restart is wanted because of LP: #1942276 and Bug: #993821
# The care is needed because of https://bugs.debian.org/753725
# (if systemd --help fails the system might still be quite broken but
# that seems better than the kernel panic that results if systemd
# cannot reexec itself).
TELINIT=no
if systemd --help >/dev/null 2>/dev/null; then
systemctl daemon-reexec
else
echo "Error: Could not restart systemd, systemd binary not working" >&2
fi
elif ! command -v telinit >/dev/null; then
# There is not telinit binary:
TELINIT=no
elif readlink $(command -v telinit) | grep -q systemctl; then
# Systemd's telinit tends to do bad things (#1063147, #1071462), so
# just ignore that case:
TELINIT=no
fi
if [ "$TELINIT" = "yes" ]; then
telinit u 2>/dev/null || true ; sleep 1
fi
# Emit triggers to allow depending packages to restart themselves if
# needed. The triggers are called with "--no-await", as packages with the
# triggers-awaited state do not satisfy dependencies.
......
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
This diff is collapsed.
commit 74f9ee3b91931967df5601ad63a4b02f5cd75b43
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Mon Jun 10 21:56:13 2024 +0200
hurd: Fix lsetxattr return value
The manpage says that lsetxattr returns 0 on success, like setxattr.
commit ba5a23422a156804234dff6c5be89e20ee8f9ec2
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Mon Jun 10 21:57:53 2024 +0200
hurd: Fix getxattr("gnu.translator") returning ENODATA
When no translator is set, __file_get_translator would return EINVAL
which is a confusing value. Better check for a passive translation
before getting the value.
commit ed06248019908dd4f286552594ac3ec844ef3da4
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Mon Jun 10 22:00:20 2024 +0200
hurd: Fix setxattr return value on replacing
When XATTR_REPLACE is set we shall succeed when the value already
exists, and fail with ENODATA otherwise, instead of the converse.
commit 5968125f55a3a3f3394e4ebe45e1f96d4864c576
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Mon Jun 10 22:01:40 2024 +0200
hurd: Fix getxattr/listxattr returning ERANGE
The manpage says that when the passed size is zero, they should set the
expected size and return 0. ERANGE shall be returned only when the non-zero
passed size is not large enough.
---
hurd/xattr.c | 43 +++++++++++++++++++++++++++++++++---------
sysdeps/mach/hurd/lsetxattr.c | 2 -
2 files changed, 35 insertions(+), 10 deletions(-)
--- a/sysdeps/mach/hurd/lsetxattr.c
+++ b/sysdeps/mach/hurd/lsetxattr.c
@@ -32,5 +32,5 @@ lsetxattr (const char *path, const char
return -1;
err = _hurd_xattr_set (port, name, value, size, flags);
__mach_port_deallocate (__mach_task_self (), port);
- return err ? __hurd_fail (err) : size;
+ return __hurd_fail (err);
}
--- a/hurd/xattr.c
+++ b/hurd/xattr.c
@@ -50,7 +50,15 @@ _hurd_xattr_get (io_t port, const char *
else if (value)
{
if (*size < sizeof st.st_author)
- return ERANGE;
+ {
+ if (*size > 0)
+ return ERANGE;
+ else
+ {
+ *size = sizeof st.st_author;
+ return 0;
+ }
+ }
memcpy (value, &st.st_author, sizeof st.st_author);
}
*size = sizeof st.st_author;
@@ -61,15 +69,33 @@ _hurd_xattr_get (io_t port, const char *
{
char *buf = value;
mach_msg_type_number_t bufsz = value ? *size : 0;
- error_t err = __file_get_translator (port, &buf, &bufsz);
+ struct stat64 st;
+ error_t err;
+
+ err = __io_stat (port, &st);
if (err)
return err;
- if (value != NULL && *size < bufsz)
+ if ((st.st_mode & S_IPTRANS) == 0)
+ return ENODATA;
+
+ err = __file_get_translator (port, &buf, &bufsz);
+ if (err)
+ return err;
+
+ if (*size < bufsz)
{
if (buf != value)
__munmap (buf, bufsz);
- return ERANGE;
+
+ if (*size > 0)
+ return ERANGE;
+ else
+ {
+ *size = bufsz;
+ return 0;
+ }
}
+
if (buf != value && bufsz > 0)
{
if (value != NULL)
@@ -149,10 +175,9 @@ _hurd_xattr_set (io_t port, const char *
if (err)
return err;
if (bufsz > 0)
- {
- __munmap (buf, bufsz);
- return ENODATA;
- }
+ __munmap (buf, bufsz);
+ else
+ return ENODATA;
}
return __file_set_translator (port,
FS_TRANS_SET | ((flags & XATTR_CREATE)
@@ -193,7 +218,7 @@ _hurd_xattr_list (io_t port, void *buffe
if (st.st_mode & S_IPTRANS)
add ("gnu.translator");
- if (buffer != NULL && total > *size)
+ if (*size > 0 && total > *size)
return ERANGE;
*size = total;
return 0;
......@@ -27,8 +27,7 @@ hppa/local-inlining.diff
# Committed for 2.40
hurd-i386/git-context.diff
# 2.40
hurd-i386/git-xattr.diff
hurd-i386/git-proc_getchildren_rusage.diff
hurd-i386/git-AT_NO_AUTOMOUNT.diff
......@@ -93,9 +92,3 @@ 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