From ebdf53a7fc8e6d6b68d2dfe2452c4149dc58e82a Mon Sep 17 00:00:00 2001 From: Greg McGary Date: Tue, 27 Jun 2000 17:05:42 +0000 Subject: * elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM (). * include/libc-symbols.h (weak_extern): Add extra level of expansion. (symbol_version, default_symbol_version): Factor redundant definitions out of conditional. * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Wrap BP_SYM () around weak extern declarations of pthread functions that have pointers in their return+arg signatures. 2000-06-27 Greg McGary * elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM (). * include/libc-symbols.h (weak_extern): Add extra level of expansion. (symbol_version, default_symbol_version): Factor redundant definitions out of conditional. * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Wrap BP_SYM () around weak extern declarations of pthread functions that have pointers in their return+arg signatures. --- include/libc-symbols.h | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'include') diff --git a/include/libc-symbols.h b/include/libc-symbols.h index d30ac67..7e41774 100644 --- a/include/libc-symbols.h +++ b/include/libc-symbols.h @@ -97,10 +97,11 @@ extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))); /* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined). */ +# define weak_extern(symbol) _weak_extern (symbol) # ifdef HAVE_ASM_WEAKEXT_DIRECTIVE -# define weak_extern(symbol) asm (".weakext " __SYMBOL_PREFIX #symbol); +# define _weak_extern(symbol) asm (".weakext " __SYMBOL_PREFIX #symbol); # else -# define weak_extern(symbol) asm (".weak " __SYMBOL_PREFIX #symbol); +# define _weak_extern(symbol) asm (".weak " __SYMBOL_PREFIX #symbol); # endif # else @@ -267,22 +268,18 @@ #endif /* Have GNU ld. */ #if DO_VERSIONING -# ifdef __ASSEMBLER__ -# define symbol_version(real, name, version) \ +# define symbol_version(real, name, version) \ _symbol_version(real, name, version) +# define default_symbol_version(real, name, version) \ + _default_symbol_version(real, name, version) +# ifdef __ASSEMBLER__ # define _symbol_version(real, name, version) \ .symver real, name##@##version -# define default_symbol_version(real, name, version) \ - _default_symbol_version(real, name, version) # define _default_symbol_version(real, name, version) \ .symver real, name##@##@##version # else -# define symbol_version(real, name, version) \ - _symbol_version(real, name, version) # define _symbol_version(real, name, version) \ __asm__ (".symver " #real "," #name "@" #version) -# define default_symbol_version(real, name, version) \ - _default_symbol_version(real, name, version) # define _default_symbol_version(real, name, version) \ __asm__ (".symver " #real "," #name "@@" #version) # endif -- cgit v1.1