svn commit: trunk/uClibc/include

Peter S. Mazinger ps.m at gmx.net
Thu May 4 15:11:13 UTC 2006


On Thu, 4 May 2006 vapier at uclibc.org wrote:

> Author: vapier
> Date: 2006-05-04 07:50:17 -0700 (Thu, 04 May 2006)
> New Revision: 14993
> 
> Log:
> sync minor changes with glibc
> 
> Modified:
>    trunk/uClibc/include/libc-symbols.h
> 
> 
> Changeset:
> Modified: trunk/uClibc/include/libc-symbols.h
> ===================================================================
> --- trunk/uClibc/include/libc-symbols.h	2006-05-04 14:44:13 UTC (rev 14992)
> +++ trunk/uClibc/include/libc-symbols.h	2006-05-04 14:50:17 UTC (rev 14993)

...
> @@ -128,13 +155,13 @@
>  # define _strong_alias(name, aliasname) \
>    extern __typeof (name) aliasname __attribute__ ((alias (#name)));
>  
> -# ifdef HAVE_WEAK_SYMBOLS
> -
>  /* This comes between the return type and function name in
>     a function definition to make that definition weak.  */
>  # define weak_function __attribute__ ((weak))
>  # define weak_const_function __attribute__ ((weak, __const__))
>  
> +# ifdef HAVE_WEAK_SYMBOLS
> +
>  /* Define ALIASNAME as a weak alias for NAME.
>     If weak aliases are not available, this defines a strong alias.  */
>  #  define weak_alias(name, aliasname) _weak_alias (name, aliasname)
> @@ -147,9 +174,6 @@
>  
>  # else
>  
> -# define weak_function /* empty */
> -# define weak_const_function /* empty */
> -
>  #  define weak_alias(name, aliasname) strong_alias(name, aliasname)
>  #  define weak_extern(symbol) /* Nothing. */

I can't really believe that a toolchain has support for __attribute__ 
((weak)) and __attribute__ ((weak, __const__)), but does not have for 
__attribute__ ((weak, alias (#name)))

This is what moving HAVE_WEAK_SYMBOLS will do (even if glibc has it like 
that).

Peter

-- 
Peter S. Mazinger <ps dot m at gmx dot net>           ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2




More information about the uClibc mailing list