diff options
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | csu/Makefile | 2 | ||||
-rw-r--r-- | include/time.h | 1 | ||||
-rw-r--r-- | include/wchar.h | 1 | ||||
-rw-r--r-- | libio/fileops.c | 1 | ||||
-rw-r--r-- | libio/libioP.h | 1 | ||||
-rw-r--r-- | malloc/mtrace.c | 4 | ||||
-rw-r--r-- | string/string-inlines.c | 13 | ||||
-rw-r--r-- | time/strftime.c | 2 |
9 files changed, 40 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 61c5b5fbd1..9026d1ef93 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,22 @@ +2002-12-31 Ulrich Drepper <drepper@redhat.com> + + * string/string-inlines.c: Define __memcpy_g and __strchr_g macros + to avoid using the exported symbols. Define aliases with the + original names separately. + + * include/time.h: Add libc_hidden_proto for __strftime_l. + * include/wchar.h: Add libc_hidden_proto for __wcsftime_l. + * time/strftime.c: Always use libc_hidden_def if _LIBC. + + * libio/libioP.h: Add libc_hidden_proto for _IO_file_open. + * libio/fileops.c: Add libc_hidden_def for _IO_file_open. + + * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for + tr_break. + + * csu/Makefile (routines): Add dso_handle. + * csu/dso_handle.c: New file. + 2002-12-31 Roland McGrath <roland@redhat.com> * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here. diff --git a/csu/Makefile b/csu/Makefile index 0829e01278..f4c162116a 100644 --- a/csu/Makefile +++ b/csu/Makefile @@ -27,7 +27,7 @@ subdir := csu routines = init-first libc-start $(libc-init) sysdep version check_fds \ - libc-tls elf-init + libc-tls elf-init dso_handle aux = errno elide-routines.os = libc-tls static-only-routines = elf-init diff --git a/include/time.h b/include/time.h index 145f888c43..aedef2dd67 100644 --- a/include/time.h +++ b/include/time.h @@ -5,6 +5,7 @@ # include <time/time.h> extern __typeof (strftime_l) __strftime_l; +libc_hidden_proto (__strftime_l) extern __typeof (strptime_l) __strptime_l; libc_hidden_proto (time) diff --git a/include/wchar.h b/include/wchar.h index e390f8104f..a9cd440eec 100644 --- a/include/wchar.h +++ b/include/wchar.h @@ -15,6 +15,7 @@ extern __typeof (wcstod_l) __wcstod_l; extern __typeof (wcstof_l) __wcstof_l; extern __typeof (wcstold_l) __wcstold_l; extern __typeof (wcsftime_l) __wcsftime_l; +libc_hidden_proto (__wcsftime_l) libc_hidden_proto (__wcstof_internal) diff --git a/libio/fileops.c b/libio/fileops.c index 032f4a7269..c914e84ce0 100644 --- a/libio/fileops.c +++ b/libio/fileops.c @@ -248,6 +248,7 @@ _IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64) INTUSE(_IO_link_in) ((struct _IO_FILE_plus *) fp); return fp; } +libc_hidden_def (_IO_file_open) _IO_FILE * _IO_new_file_fopen (fp, filename, mode, is32not64) diff --git a/libio/libioP.h b/libio/libioP.h index dcc9077683..760bb1e702 100644 --- a/libio/libioP.h +++ b/libio/libioP.h @@ -542,6 +542,7 @@ extern void _IO_file_init __P ((struct _IO_FILE_plus *)); extern _IO_FILE* _IO_file_attach __P ((_IO_FILE *, int)); extern _IO_FILE* _IO_file_open __P ((_IO_FILE *, const char *, int, int, int, int)); +libc_hidden_proto (_IO_file_open) extern _IO_FILE* _IO_file_fopen __P ((_IO_FILE *, const char *, const char *, int)); extern _IO_ssize_t _IO_file_write __P ((_IO_FILE *, const void *, diff --git a/malloc/mtrace.c b/malloc/mtrace.c index c369ab577c..27bdb2da31 100644 --- a/malloc/mtrace.c +++ b/malloc/mtrace.c @@ -77,11 +77,13 @@ static __ptr_t (*tr_old_realloc_hook) __P ((__ptr_t ptr, set "mallwatch" to the address of interest, then put a breakpoint on tr_break. */ -void tr_break __P ((void)); +extern void tr_break __P ((void)); +libc_hidden_proto (tr_break) void tr_break () { } +libc_hidden_def (tr_break) static void tr_where __P ((const __ptr_t)) internal_function; static void diff --git a/string/string-inlines.c b/string/string-inlines.c index 3db5ab7d6c..7c9776c419 100644 --- a/string/string-inlines.c +++ b/string/string-inlines.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1999 Free Software Foundation, Inc. +/* Copyright (C) 1999, 2002 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 @@ -25,4 +25,15 @@ #define _FORCE_INLINES #define __STRING_INLINE /* empty */ +/* This is to avoid PLT entries for the x86 version. */ +#define __memcpy_g __memcpy_g_internal +#define __strchr_g __strchr_g_internal + #include <string.h> + +#ifdef __memcpy_c +# undef __memcpy_g +strong_alias (__memcpy_g_internal, __memcpy_g) +# undef __strchr_g +strong_alias (__strchr_g_internal, __strchr_g) +#endif diff --git a/time/strftime.c b/time/strftime.c index e5eabf9d1c..807bb5c4a0 100644 --- a/time/strftime.c +++ b/time/strftime.c @@ -1419,7 +1419,7 @@ my_strftime (s, maxsize, format, tp ut_argument LOCALE_PARAM) *p = L_('\0'); return i; } -#if defined _LIBC && !defined USE_IN_EXTENDED_LOCALE_MODEL +#ifdef _LIBC libc_hidden_def (my_strftime) #endif |