mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 19:00:07 +00:00
* include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
Remove __strto*_l inlines. * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l. * stdlib/strtod.c: Add libc_hidden_def. * stdlib/strtod_l.c: Likewise. * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto for __new_strtold and __new_wcstold. * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for __STRTOF, STRTOF. * stdlib/strtol.c: Add libc_hidden_def. * stdlib/strtol_l.c: Likewise. * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and strtoq. * scripts/data/localplt-powerpc-linux-gnu.data: New file. * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ... * scripts/data/localplt-generic.data: ... here. * elf/Makefile (check-data): Get generic file if no other. ($(objpfx)check-localplt.out): Make target unconditional.
This commit is contained in:
parent
eef38c28d1
commit
773e305efc
21
ChangeLog
21
ChangeLog
@ -1,5 +1,26 @@
|
|||||||
2007-08-06 Roland McGrath <roland@redhat.com>
|
2007-08-06 Roland McGrath <roland@redhat.com>
|
||||||
|
|
||||||
|
* include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
|
||||||
|
Remove __strto*_l inlines.
|
||||||
|
* include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
|
||||||
|
* stdlib/strtod.c: Add libc_hidden_def.
|
||||||
|
* stdlib/strtod_l.c: Likewise.
|
||||||
|
* stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
|
||||||
|
for __new_strtold and __new_wcstold.
|
||||||
|
* sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
|
||||||
|
__STRTOF, STRTOF.
|
||||||
|
* stdlib/strtol.c: Add libc_hidden_def.
|
||||||
|
* stdlib/strtol_l.c: Likewise.
|
||||||
|
* sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
|
||||||
|
strtoq.
|
||||||
|
|
||||||
|
* scripts/data/localplt-powerpc-linux-gnu.data: New file.
|
||||||
|
|
||||||
|
* scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
|
||||||
|
* scripts/data/localplt-generic.data: ... here.
|
||||||
|
* elf/Makefile (check-data): Get generic file if no other.
|
||||||
|
($(objpfx)check-localplt.out): Make target unconditional.
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
|
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
|
||||||
Use ElfW(Nhdr).
|
Use ElfW(Nhdr).
|
||||||
|
|
||||||
|
16
elf/Makefile
16
elf/Makefile
@ -837,28 +837,26 @@ $(objpfx)tst-dlmodcount: $(libdl)
|
|||||||
$(objpfx)tst-dlmodcount.out: $(test-modules)
|
$(objpfx)tst-dlmodcount.out: $(test-modules)
|
||||||
|
|
||||||
check-data := $(firstword $(wildcard \
|
check-data := $(firstword $(wildcard \
|
||||||
$(foreach M,$(config-machine) $(base-machine),\
|
$(patsubst %,../scripts/data/localplt-%.data,\
|
||||||
../scripts/data/localplt-$M-$(config-os).data)))
|
$(addsuffix -$(config-os),\
|
||||||
ifneq (,$(check-data))
|
$(config-machine) $(base-machine))\
|
||||||
|
generic)))
|
||||||
tests: $(objpfx)check-localplt.out
|
tests: $(objpfx)check-localplt.out
|
||||||
|
|
||||||
ifeq ($(have-thread-library),yes)
|
ifeq ($(have-thread-library),yes)
|
||||||
thread-dso := $(filter-out %_nonshared.a, $(shared-thread-library))
|
thread-dso := $(filter-out %_nonshared.a, $(shared-thread-library))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(objpfx)check-localplt.out: $(objpfx)check-localplt $(common-objpfx)libc.so \
|
$(objpfx)check-localplt.out: $(objpfx)check-localplt \
|
||||||
|
$(common-objpfx)libc.so \
|
||||||
$(common-objpfx)math/libm.so $(thread-dso) \
|
$(common-objpfx)math/libm.so $(thread-dso) \
|
||||||
$(common-objpfx)rt/librt.so \
|
$(common-objpfx)rt/librt.so \
|
||||||
$(common-objpfx)dlfcn/libdl.so \
|
$(common-objpfx)dlfcn/libdl.so \
|
||||||
$(check-data)
|
$(check-data)
|
||||||
$(objpfx)check-localplt $(common-objpfx)libc.so \
|
$(dir $<)$(notdir $<) $(filter-out $< $(check-data),$^) | \
|
||||||
$(common-objpfx)math/libm.so $(thread-dso) \
|
|
||||||
$(common-objpfx)rt/librt.so \
|
|
||||||
$(common-objpfx)dlfcn/libdl.so | \
|
|
||||||
LC_ALL=C sort | \
|
LC_ALL=C sort | \
|
||||||
diff -u $(check-data) - > $@
|
diff -u $(check-data) - > $@
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
|
|
||||||
$(objpfx)tst-dlopenrpathmod.so: $(libdl)
|
$(objpfx)tst-dlopenrpathmod.so: $(libdl)
|
||||||
$(objpfx)tst-dlopenrpath: $(objpfx)tst-dlopenrpathmod.so $(libdl)
|
$(objpfx)tst-dlopenrpath: $(objpfx)tst-dlopenrpathmod.so $(libdl)
|
||||||
|
@ -19,6 +19,13 @@ extern __typeof (strtoull_l) __strtoull_l;
|
|||||||
extern __typeof (strtod_l) __strtod_l;
|
extern __typeof (strtod_l) __strtod_l;
|
||||||
extern __typeof (strtof_l) __strtof_l;
|
extern __typeof (strtof_l) __strtof_l;
|
||||||
extern __typeof (strtold_l) __strtold_l;
|
extern __typeof (strtold_l) __strtold_l;
|
||||||
|
libc_hidden_proto (__strtol_l)
|
||||||
|
libc_hidden_proto (__strtoul_l)
|
||||||
|
libc_hidden_proto (__strtoll_l)
|
||||||
|
libc_hidden_proto (__strtoull_l)
|
||||||
|
libc_hidden_proto (__strtod_l)
|
||||||
|
libc_hidden_proto (__strtof_l)
|
||||||
|
libc_hidden_proto (__strtold_l)
|
||||||
|
|
||||||
libc_hidden_proto (exit)
|
libc_hidden_proto (exit)
|
||||||
libc_hidden_proto (abort)
|
libc_hidden_proto (abort)
|
||||||
@ -170,48 +177,13 @@ libc_hidden_proto (____strtoll_l_internal)
|
|||||||
libc_hidden_proto (____strtoul_l_internal)
|
libc_hidden_proto (____strtoul_l_internal)
|
||||||
libc_hidden_proto (____strtoull_l_internal)
|
libc_hidden_proto (____strtoull_l_internal)
|
||||||
|
|
||||||
extern __inline double
|
libc_hidden_proto (strtof)
|
||||||
__NTH (__strtod_l (__const char *__restrict __nptr, char **__restrict __endptr,
|
libc_hidden_proto (strtod)
|
||||||
__locale_t __loc))
|
libc_hidden_proto (strtold)
|
||||||
{
|
libc_hidden_proto (strtol)
|
||||||
return ____strtod_l_internal (__nptr, __endptr, 0, __loc);
|
libc_hidden_proto (strtoll)
|
||||||
}
|
libc_hidden_proto (strtoul)
|
||||||
extern __inline long int
|
libc_hidden_proto (strtoull)
|
||||||
__NTH (__strtol_l (__const char *__restrict __nptr, char **__restrict __endptr,
|
|
||||||
int __base, __locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtol_l_internal (__nptr, __endptr, __base, 0, __loc);
|
|
||||||
}
|
|
||||||
extern __inline unsigned long int
|
|
||||||
__NTH (__strtoul_l (__const char *__restrict __nptr,
|
|
||||||
char **__restrict __endptr, int __base, __locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtoul_l_internal (__nptr, __endptr, __base, 0, __loc);
|
|
||||||
}
|
|
||||||
extern __inline float
|
|
||||||
__NTH (__strtof_l (__const char *__restrict __nptr, char **__restrict __endptr,
|
|
||||||
__locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtof_l_internal (__nptr, __endptr, 0, __loc);
|
|
||||||
}
|
|
||||||
extern __inline long double
|
|
||||||
__NTH (__strtold_l (__const char *__restrict __nptr,
|
|
||||||
char **__restrict __endptr, __locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtold_l_internal (__nptr, __endptr, 0, __loc);
|
|
||||||
}
|
|
||||||
__extension__ extern __inline long long int
|
|
||||||
__NTH (__strtoll_l (__const char *__restrict __nptr,
|
|
||||||
char **__restrict __endptr, int __base, __locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtoll_l_internal (__nptr, __endptr, __base, 0, __loc);
|
|
||||||
}
|
|
||||||
__extension__ extern __inline unsigned long long int
|
|
||||||
__NTH (__strtoull_l (__const char * __restrict __nptr,
|
|
||||||
char **__restrict __endptr, int __base, __locale_t __loc))
|
|
||||||
{
|
|
||||||
return ____strtoull_l_internal (__nptr, __endptr, __base, 0, __loc);
|
|
||||||
}
|
|
||||||
|
|
||||||
extern char *__ecvt (double __value, int __ndigit, int *__restrict __decpt,
|
extern char *__ecvt (double __value, int __ndigit, int *__restrict __decpt,
|
||||||
int *__restrict __sign);
|
int *__restrict __sign);
|
||||||
|
@ -15,6 +15,13 @@ extern __typeof (wcstod_l) __wcstod_l;
|
|||||||
extern __typeof (wcstof_l) __wcstof_l;
|
extern __typeof (wcstof_l) __wcstof_l;
|
||||||
extern __typeof (wcstold_l) __wcstold_l;
|
extern __typeof (wcstold_l) __wcstold_l;
|
||||||
extern __typeof (wcsftime_l) __wcsftime_l;
|
extern __typeof (wcsftime_l) __wcsftime_l;
|
||||||
|
libc_hidden_proto (__wcstol_l)
|
||||||
|
libc_hidden_proto (__wcstoul_l)
|
||||||
|
libc_hidden_proto (__wcstoll_l)
|
||||||
|
libc_hidden_proto (__wcstoull_l)
|
||||||
|
libc_hidden_proto (__wcstod_l)
|
||||||
|
libc_hidden_proto (__wcstof_l)
|
||||||
|
libc_hidden_proto (__wcstold_l)
|
||||||
libc_hidden_proto (__wcsftime_l)
|
libc_hidden_proto (__wcsftime_l)
|
||||||
|
|
||||||
|
|
||||||
@ -51,6 +58,13 @@ libc_hidden_proto (__wcstol_internal)
|
|||||||
libc_hidden_proto (__wcstoll_internal)
|
libc_hidden_proto (__wcstoll_internal)
|
||||||
libc_hidden_proto (__wcstoul_internal)
|
libc_hidden_proto (__wcstoul_internal)
|
||||||
libc_hidden_proto (__wcstoull_internal)
|
libc_hidden_proto (__wcstoull_internal)
|
||||||
|
libc_hidden_proto (wcstof)
|
||||||
|
libc_hidden_proto (wcstod)
|
||||||
|
libc_hidden_proto (wcstold)
|
||||||
|
libc_hidden_proto (wcstol)
|
||||||
|
libc_hidden_proto (wcstoll)
|
||||||
|
libc_hidden_proto (wcstoul)
|
||||||
|
libc_hidden_proto (wcstoull)
|
||||||
|
|
||||||
libc_hidden_proto (__wcscasecmp_l)
|
libc_hidden_proto (__wcscasecmp_l)
|
||||||
libc_hidden_proto (__wcsncasecmp_l)
|
libc_hidden_proto (__wcsncasecmp_l)
|
||||||
|
7
scripts/data/localplt-powerpc-linux-gnu.data
Normal file
7
scripts/data/localplt-powerpc-linux-gnu.data
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
libc.so: _Unwind_Find_FDE
|
||||||
|
libc.so: calloc
|
||||||
|
libc.so: free
|
||||||
|
libc.so: malloc
|
||||||
|
libc.so: memalign
|
||||||
|
libc.so: realloc
|
||||||
|
libm.so: matherr
|
@ -1,6 +1,6 @@
|
|||||||
/* Read decimal floating point numbers.
|
/* Read decimal floating point numbers.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Copyright (C) 1995-2002, 2003, 2004, 2006 Free Software Foundation, Inc.
|
Copyright (C) 1995-2002,2003,2004,2006,2007 Free Software Foundation, Inc.
|
||||||
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -69,6 +69,9 @@ STRTOF (nptr, endptr)
|
|||||||
{
|
{
|
||||||
return INTERNAL(STRTOF_L) (nptr, endptr, 0, _NL_CURRENT_LOCALE);
|
return INTERNAL(STRTOF_L) (nptr, endptr, 0, _NL_CURRENT_LOCALE);
|
||||||
}
|
}
|
||||||
|
#if defined _LIBC
|
||||||
|
libc_hidden_def (STRTOF)
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef LONG_DOUBLE_COMPAT
|
#ifdef LONG_DOUBLE_COMPAT
|
||||||
# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
|
# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
|
||||||
|
@ -1599,6 +1599,10 @@ __STRTOF (nptr, endptr, loc)
|
|||||||
{
|
{
|
||||||
return ____STRTOF_INTERNAL (nptr, endptr, 0, loc);
|
return ____STRTOF_INTERNAL (nptr, endptr, 0, loc);
|
||||||
}
|
}
|
||||||
|
#if defined _LIBC
|
||||||
|
libc_hidden_def (__STRTOF)
|
||||||
|
libc_hidden_ver (__STRTOF, STRTOF)
|
||||||
|
#endif
|
||||||
weak_alias (__STRTOF, STRTOF)
|
weak_alias (__STRTOF, STRTOF)
|
||||||
|
|
||||||
#ifdef LONG_DOUBLE_COMPAT
|
#ifdef LONG_DOUBLE_COMPAT
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* Convert string representation of a number into an integer value.
|
/* Convert string representation of a number into an integer value.
|
||||||
Copyright (C) 1991,92,94,95,96,97,98,99,2000,2001,2002,2003,2004
|
Copyright (C) 1991,92,94,95,96,97,98,99,2000,2001,2002,2003,2004,2007
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -109,3 +109,4 @@ strtol (nptr, endptr, base)
|
|||||||
{
|
{
|
||||||
return INTERNAL (__strtol_l) (nptr, endptr, base, 0, _NL_CURRENT_LOCALE);
|
return INTERNAL (__strtol_l) (nptr, endptr, base, 0, _NL_CURRENT_LOCALE);
|
||||||
}
|
}
|
||||||
|
libc_hidden_def (strtol)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* Convert string representing a number to integer value, using given locale.
|
/* Convert string representing a number to integer value, using given locale.
|
||||||
Copyright (C) 1997, 2002, 2004, 2006 Free Software Foundation, Inc.
|
Copyright (C) 1997, 2002, 2004, 2006, 2007 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||||
|
|
||||||
@ -561,4 +561,5 @@ __strtol_l (nptr, endptr, base, loc)
|
|||||||
{
|
{
|
||||||
return INTERNAL (__strtol_l) (nptr, endptr, base, 0, loc);
|
return INTERNAL (__strtol_l) (nptr, endptr, base, 0, loc);
|
||||||
}
|
}
|
||||||
|
libc_hidden_def (__strtol_l)
|
||||||
weak_alias (__strtol_l, strtol_l)
|
weak_alias (__strtol_l, strtol_l)
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Read decimal floating point numbers.
|
/* Read decimal floating point numbers.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Copyright (C) 1995-2002, 2003, 2004, 2006 Free Software Foundation, Inc.
|
Copyright (C) 1995-2002,2003,2004,2006,2007 Free Software Foundation, Inc.
|
||||||
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -33,6 +33,8 @@ long double ____new_wcstold_internal (const wchar_t *, wchar_t **, int);
|
|||||||
long double __new_wcstold (const wchar_t *, wchar_t **);
|
long double __new_wcstold (const wchar_t *, wchar_t **);
|
||||||
libc_hidden_proto (____new_strtold_internal)
|
libc_hidden_proto (____new_strtold_internal)
|
||||||
libc_hidden_proto (____new_wcstold_internal)
|
libc_hidden_proto (____new_wcstold_internal)
|
||||||
|
libc_hidden_proto (__new_strtold)
|
||||||
|
libc_hidden_proto (__new_wcstold)
|
||||||
#else
|
#else
|
||||||
# define NEW(x) x
|
# define NEW(x) x
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 1999, 2006 Free Software Foundation, Inc.
|
/* Copyright (C) 1999, 2006, 2007 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -37,6 +37,9 @@ extern long double ____new_strtold_l (const char *, char **, __locale_t);
|
|||||||
# define __STRTOF ____new_strtold_l
|
# define __STRTOF ____new_strtold_l
|
||||||
# define ____STRTOF_INTERNAL ____strtold_l_internal
|
# define ____STRTOF_INTERNAL ____strtold_l_internal
|
||||||
#endif
|
#endif
|
||||||
|
extern __typeof (__STRTOF) STRTOF;
|
||||||
|
libc_hidden_proto (__STRTOF)
|
||||||
|
libc_hidden_proto (STRTOF)
|
||||||
#define MPN2FLOAT __mpn_construct_long_double
|
#define MPN2FLOAT __mpn_construct_long_double
|
||||||
#define FLOAT_HUGE_VAL HUGE_VALL
|
#define FLOAT_HUGE_VAL HUGE_VALL
|
||||||
# define SET_MANTISSA(flt, mant) \
|
# define SET_MANTISSA(flt, mant) \
|
||||||
|
@ -11,4 +11,6 @@
|
|||||||
strong_alias (__strtol_internal, __strtoll_internal)
|
strong_alias (__strtol_internal, __strtoll_internal)
|
||||||
libc_hidden_ver (__strtol_internal, __strtoll_internal)
|
libc_hidden_ver (__strtol_internal, __strtoll_internal)
|
||||||
weak_alias (strtol, strtoll)
|
weak_alias (strtol, strtoll)
|
||||||
|
libc_hidden_ver (strtol, strtoll)
|
||||||
weak_alias (strtol, strtoq)
|
weak_alias (strtol, strtoq)
|
||||||
|
libc_hidden_ver (strtol, strtoq)
|
||||||
|
Loading…
Reference in New Issue
Block a user