1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

* manual/errno.texi (Error Codes): Added ECANCELED (118 for Hurd).

* sysdeps/mach/hurd/bits/errno.h: Regenerated.

	* sysdeps/gnu/Versions: New file.
	* sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.1): Remove
	_sys_errlist; sys_errlist; _sys_nerr; sys_nerr; from here.
	* sysdeps/gnu/Makefile ($(..)sysdeps/gnu/errlist-compat.c): New target.
	($(objpfx)errlist.d): Depend on $(..)sysdeps/gnu/errlist-compat.c.
	* sysdeps/gnu/errlist.awk: Make output define _sys_errlist_internal
	and _sys_nerr_internal instead of anything else.  Make it include
	"errlist-compat.c" if [!NOT_IN_libc && !ERRLIST_NO_COMPAT].
	Make it emit some asm magic if [EMIT_ERR_MAX].
	* sysdeps/gnu/errlist.c: Regenerated.
	* sysdeps/gnu/errlist-compat.awk: New file.
	* sysdeps/gnu/errlist-compat.c: New file (generated).
	* sysdeps/mach/hurd/errlist.c (ERRLIST_NO_COMPAT): New macro.
	(_sys_errlist_internal): Define this as	a macro for _hurd_errlist.
	(_sys_nerr_internal): Define this is a macro for _hurd_nerr.
	(SYS_ERRLIST, SYS_NERR): Macros removed.
	(sys_nerr, _sys_nerr): Remove these weak aliases.
	* sysdeps/unix/sysv/linux/errlist.c: File removed.
	* sysdeps/unix/sysv/linux/errlist.h: File removed.
	* sysdeps/unix/sysv/linux/arm/errlist.c: File removed.

	* include/libc-symbols.h (declare_symbol): New macro.
	* config.h.in (ASM_TYPE_DIRECTIVE_PREFIX): New #undef.
	* configure.in: New check to define it.
	* configure: Regenerated.
This commit is contained in:
Roland McGrath
2002-08-27 09:23:13 +00:00
parent 4022d8ed03
commit b88ac073ae
7 changed files with 203 additions and 73 deletions

View File

@ -29,6 +29,8 @@
* HAVE_ASM_SET_DIRECTIVE if we have `.set B, A' instead of `A = B'.
* ASM_GLOBAL_DIRECTIVE with `.globl' or `.global'.
* ASM_TYPE_DIRECTIVE_PREFIX with `@' or `#' or whatever for .type,
or leave it undefined if there is no .type directive.
* HAVE_GNU_LD if using GNU ld, with support for weak symbols in a.out,
and for symbol set and warning messages extensions in a.out and ELF.
* HAVE_ELF if using ELF, which supports weak symbols using `.weak'.
@ -244,6 +246,34 @@
link_warning (name, \
"warning: " #name " is not implemented and will always fail")
/* Declare SYMBOL to be TYPE (`function' or `object') and of SIZE bytes,
when the assembler supports such declarations (such as in ELF).
This is only necessary when defining something in assembly, or playing
funny alias games where the size should be other than what the compiler
thinks it is. */
#define declare_symbol(symbol, type, size) \
declare_symbol_1 (symbol, type, size)
#ifdef ASM_TYPE_DIRECTIVE_PREFIX
# ifdef __ASSEMBLER__
# define declare_symbol_1(symbol, type, size) \
.type C_SYMBOL_NAME (symbol), \
declare_symbol_1_paste (ASM_TYPE_DIRECTIVE_PREFIX, type), size
# define declare_symbol_1_paste(a, b) declare_symbol_1_paste_1 (a,b)
# define declare_symbol_1_paste_1(a,b) a##b
# else /* Not __ASSEMBLER__. */
# define declare_symbol_1(symbol, type, size) \
asm (".type " __SYMBOL_PREFIX #symbol \
declare_symbol_1_stringify (ASM_TYPE_DIRECTIVE_PREFIX) #type \
"\n\t.size " __SYMBOL_PREFIX #symbol ", " #size);
# define declare_symbol_1_stringify(x) declare_symbol_1_stringify_1 (x)
# define declare_symbol_1_stringify_1(x) #x
# endif /* __ASSEMBLER__ */
#else
# define declare_symbol_1(symbol, type, size) /* Nothing. */
#endif
/*
*/