diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-03-14 14:59:35 -0300 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2024-07-02 14:25:52 +0200 |
commit | 6cb25aff8583421cf7a55ddd40abd7bd49176c60 (patch) | |
tree | c52cdad1a96889ae7d4d8f91488aa354f5c4c1c7 /sysdeps/ieee754 | |
parent | 74630b1bb717fb98f4692261f2be8d5c84851fa3 (diff) | |
download | glibc-6cb25aff8583421cf7a55ddd40abd7bd49176c60.zip glibc-6cb25aff8583421cf7a55ddd40abd7bd49176c60.tar.gz glibc-6cb25aff8583421cf7a55ddd40abd7bd49176c60.tar.bz2 |
math: Fix i386 and m68k fmod/fmodf on static build (BZ 31488)
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.
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Tested-by: Aurelien Jarno <aurelien@aurel32.net>
(cherry picked from commit 0b716305dfb48c2d13ed4f7d06c082b90c1d226f)
Diffstat (limited to 'sysdeps/ieee754')
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/s_ldexpl.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/ieee754/ldbl-opt/s_ldexpl.c b/sysdeps/ieee754/ldbl-opt/s_ldexpl.c index 1afbe7d..932cc43 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 |