This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: __errno_location export


On Sun, Dec 01, 2002 at 10:22:17PM +0200, Momchil Velikov wrote:
> >>>>> "Jakub" == Jakub Jelinek <jakub@redhat.com> writes:
> 
>     Jakub> 2002-11-25 Jakub Jelinek <jakub@redhat.com>
> 
>     Jakub> 	* include/errno.h (__set_errno): Define as errno = val
>     Jakub> unconditionally.
> 
> This way I get undefined references to errno, most probably because of
> the following in sysdeps/generic/errno.c

The above mentioned change has nothing to do with export of errno.

> /* We declare these with compat_symbol so that they are not
>    visible at link time.  Programs must use the accessor functions.  */
> # if defined HAVE_ELF && defined SHARED && defined DO_VERSIONING
> #  include <shlib-compat.h>
> compat_symbol (libc, errno, errno, GLIBC_2_0);
> compat_symbol (libc, _errno, _errno, GLIBC_2_0);
> # endif
> #endif

It depends if your port is using __errno_location in bits/errno.h as
definition of errno, or not. If yes, then not exporting errno as link time
symbol is desirable, otherwise you IMHO shouldn't be using
sysdeps/generic/errno.c.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]