diff options
author | Ulrich Drepper <drepper@redhat.com> | 2002-08-29 00:34:10 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2002-08-29 00:34:10 +0000 |
commit | 5fe14d967045adf037e12a5945ac56de151c2ae2 (patch) | |
tree | a4dd7e7664ff9227560b4a0368b3d65fb68abb10 /sysdeps/unix | |
parent | 9e7f59b4b54f0a5c0d569596c961f62238ca4dfd (diff) | |
download | glibc-5fe14d967045adf037e12a5945ac56de151c2ae2.zip glibc-5fe14d967045adf037e12a5945ac56de151c2ae2.tar.gz glibc-5fe14d967045adf037e12a5945ac56de151c2ae2.tar.bz2 |
Update.
* sysdeps/generic/ldsodefs.h (__rtld_global_attribute__): Define.
(_rtld_global): Use it.
* sysdeps/gnu/Dist: Remove errlist-compat.c.
* sysdeps/gnu/Makefile (errlist-compat.c): Build this file in the
object directory. Pass all Versions files to the awk script.
* sysdeps/gnu/errlist-compat.c: Removed.
* sysdeps/gnu/errlist.awk: Use #errlist-compat comments from the
first Versions file in the search path which has them.
Allow multiple errlist symbol versions to have the same count of
errors.
* sysdeps/gnu/errlist-compat.awk: Include <errlist-compat.c> instead
of "errlist-compat.c".
* sysdeps/gnu/errlist.c: Regenerated.
* sysdeps/unix/sysv/linux/mips/Versions (libc): Add #errlist-compat
comments at GLIBC_2.0, GLIBC_2.1 and GLIBC_2.3.
* sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
(librt): Add aio_cancel and aio_cancel64 as GLIBC_2.3.
* sysdeps/unix/sysv/linux/hppa/Versions: Likewise.
* sysdeps/unix/sysv/linux/sparc/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/bits/errno.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/errno.h (ECANCELED): Define to
ECANCELLED if not defined by kernel headers.
* sysdeps/unix/sysv/linux/bits/errno.h: Don't redefine ECANCELED if
already defined by kernel headers.
* sysdeps/unix/sysv/linux/sparc/bits/errno.h: New file.
* sysdeps/pthread/aio_cancel.c: Don't include aio.h and its
aio_cancel64 renaming hack nor provide weak_alias if aio_cancel
is a macro.
* Versions.def (GLIBC_2.3) [librt]: Add.
* sysdeps/unix/sysv/linux/alpha/pipe.S: New file.
2002-08-28 Ulrich Drepper <drepper@redhat.com>
* include/libc-symbols.h [!__ASSEMBLER__] (declare_symbol_1): Add
missing comma to .type directive.
2002-08-28 Jakub Jelinek <jakub@redhat.com>
Diffstat (limited to 'sysdeps/unix')
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/Versions | 22 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/bits/errno.h | 52 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/pipe.S | 1 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/errno.h | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/Versions | 21 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/bits/errno.h | 8 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/mips/Versions | 16 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/Versions | 25 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/bits/errno.h | 52 |
9 files changed, 197 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/Versions b/sysdeps/unix/sysv/linux/alpha/Versions index c18816c..89ec9db 100644 --- a/sysdeps/unix/sysv/linux/alpha/Versions +++ b/sysdeps/unix/sysv/linux/alpha/Versions @@ -1,5 +1,14 @@ libc { + # The comment lines with "#errlist-compat" are magic; see + # sysdeps/gnu/errlist-compat.awk. + # When you get an error from errlist-compat.awk, you need to add a new + # version here. Don't do this blindly, since this means changing the ABI + # for all GNU/Linux configurations. + GLIBC_2.0 { + #errlist-compat 131 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + # Unfortunately in wider use. _inb; _inw; _inl; _outb; _outw; _outl; _bus_base; _bus_base_sparse; _hae_shift; @@ -24,6 +33,9 @@ libc { pciconfig_read; pciconfig_write; sethae; } GLIBC_2.1 { + #errlist-compat 131 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + # Linux/Alpha 64-bit timeval functions. __select; select; adjtime; adjtimex; __adjtimex; @@ -57,4 +69,14 @@ libc { # w* wordexp; } + GLIBC_2.3 { + #errlist-compat 132 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } +} +librt { + GLIBC_2.3 { + # AIO functions. + aio_cancel; aio_cancel64; + } } diff --git a/sysdeps/unix/sysv/linux/alpha/bits/errno.h b/sysdeps/unix/sysv/linux/alpha/bits/errno.h new file mode 100644 index 0000000..9cdc167 --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/bits/errno.h @@ -0,0 +1,52 @@ +/* Error constants. Linux/Alpha specific version. + Copyright (C) 1996, 1997, 1998, 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifdef _ERRNO_H + +# undef EDOM +# undef EILSEQ +# undef ERANGE +# include <linux/errno.h> + +/* Linux has no ENOTSUP error code. */ +# define ENOTSUP EOPNOTSUPP + +# ifndef ECANCELED +# define ECANCELED 131 +# endif + +# ifndef __ASSEMBLER__ +/* Function to get address of global `errno' variable. */ +extern int *__errno_location (void) __THROW __attribute__ ((__const__)); + +# if !defined _LIBC || defined _LIBC_REENTRANT +/* When using threads, errno is a per-thread value. */ +# define errno (*__errno_location ()) +# endif +# endif /* !__ASSEMBLER__ */ +#endif /* _ERRNO_H */ + +#if !defined _ERRNO_H && defined __need_Emath +/* This is ugly but the kernel header is not clean enough. We must + define only the values EDOM, EILSEQ and ERANGE in case __need_Emath is + defined. */ +# define EDOM 33 /* Math argument out of domain of function. */ +# define EILSEQ 116 /* Illegal byte sequence. */ +# define ERANGE 34 /* Math result not representable. */ +#endif /* !_ERRNO_H && __need_Emath */ diff --git a/sysdeps/unix/sysv/linux/alpha/pipe.S b/sysdeps/unix/sysv/linux/alpha/pipe.S new file mode 100644 index 0000000..1e7ec1c --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/pipe.S @@ -0,0 +1 @@ +#include <sysdeps/unix/alpha/pipe.S> diff --git a/sysdeps/unix/sysv/linux/bits/errno.h b/sysdeps/unix/sysv/linux/bits/errno.h index 7307c2d..724daba 100644 --- a/sysdeps/unix/sysv/linux/bits/errno.h +++ b/sysdeps/unix/sysv/linux/bits/errno.h @@ -27,9 +27,11 @@ /* Linux has no ENOTSUP error code. */ # define ENOTSUP EOPNOTSUPP -/* Linux also has no ECANCELED error code. Since it is not used here +/* Linux also had no ECANCELED error code. Since it is not used here we define it to an invalid value. */ -# define ECANCELED 125 +# ifndef ECANCELED +# define ECANCELED 125 +# endif # ifndef __ASSEMBLER__ /* Function to get address of global `errno' variable. */ diff --git a/sysdeps/unix/sysv/linux/hppa/Versions b/sysdeps/unix/sysv/linux/hppa/Versions index 475fbe1..e15c822 100644 --- a/sysdeps/unix/sysv/linux/hppa/Versions +++ b/sysdeps/unix/sysv/linux/hppa/Versions @@ -1,6 +1,25 @@ libc { + # The comment lines with "#errlist-compat" are magic; see errlist-compat.awk. + # When you get an error from errlist-compat.awk, you need to add a new + # version here. Don't do this blindly, since this means changing the ABI + # for all GNU/Linux configurations. + + GLIBC_2.1 { + #errlist-compat 253 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } GLIBC_2.2 { # New rlimit interface getrlimit; setrlimit; getrlimit64; setrlimit64; } -}
\ No newline at end of file + GLIBC_2.3 { + #errlist-compat 254 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } +} +librt { + GLIBC_2.3 { + # AIO functions. + aio_cancel; aio_cancel64; + } +} diff --git a/sysdeps/unix/sysv/linux/hppa/bits/errno.h b/sysdeps/unix/sysv/linux/hppa/bits/errno.h index 4d75ff1..003d71f 100644 --- a/sysdeps/unix/sysv/linux/hppa/bits/errno.h +++ b/sysdeps/unix/sysv/linux/hppa/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. Linux/HPPA specific version. - Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1996,1997,1998,1999,2000,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 @@ -26,7 +26,9 @@ /* Linux also has no ECANCELED error code. Since it is not used here we define it to an invalid value. */ -# define ECANCELED 125 +# ifndef ECANCELED +# define ECANCELED ECANCELLED +# endif # ifndef __ASSEMBLER__ /* Function to get address of global `errno' variable. */ @@ -44,6 +46,6 @@ extern int *__errno_location (void) __THROW __attribute__ ((__const__)); define only the values EDOM, EILSEQ and ERANGE in case __need_Emath is defined. */ # define EDOM 33 /* Math argument out of domain of function. */ -# define EILSEQ 84 /* Illegal byte sequence. */ +# define EILSEQ 47 /* Illegal byte sequence. */ # define ERANGE 34 /* Math result not representable. */ #endif /* !_ERRNO_H && __need_Emath */ diff --git a/sysdeps/unix/sysv/linux/mips/Versions b/sysdeps/unix/sysv/linux/mips/Versions index f71d9b5..1569885 100644 --- a/sysdeps/unix/sysv/linux/mips/Versions +++ b/sysdeps/unix/sysv/linux/mips/Versions @@ -1,5 +1,13 @@ libc { + # The comment lines with "#errlist-compat" are magic; see errlist-compat.awk. + # When you get an error from errlist-compat.awk, you need to add a new + # version here. Don't do this blindly, since this means changing the ABI + # for all GNU/Linux configurations. + GLIBC_2.0 { + #errlist-compat 1134 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + # Exception handling support functions from libgcc __register_frame; __register_frame_table; __deregister_frame; __frame_state_for; __register_frame_info_table; @@ -13,8 +21,16 @@ libc { # s* sysmips; } + GLIBC_2.1 { + #errlist-compat 1134 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } GLIBC_2.2 { # _* _test_and_set; } + GLIBC_2.3 { + #errlist-compat 1134 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } } diff --git a/sysdeps/unix/sysv/linux/sparc/Versions b/sysdeps/unix/sysv/linux/sparc/Versions new file mode 100644 index 0000000..03d1d87 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/Versions @@ -0,0 +1,25 @@ +libc { + # The comment lines with "#errlist-compat" are magic; see errlist-compat.awk. + # When you get an error from errlist-compat.awk, you need to add a new + # version here. Don't do this blindly, since this means changing the ABI + # for all GNU/Linux configurations. + + GLIBC_2.0 { + #errlist-compat 127 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } + GLIBC_2.1 { + #errlist-compat 127 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } + GLIBC_2.3 { + #errlist-compat 128 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + } +} +librt { + GLIBC_2.3 { + # AIO functions. + aio_cancel; aio_cancel64; + } +} diff --git a/sysdeps/unix/sysv/linux/sparc/bits/errno.h b/sysdeps/unix/sysv/linux/sparc/bits/errno.h new file mode 100644 index 0000000..96b7372 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/bits/errno.h @@ -0,0 +1,52 @@ +/* Error constants. Linux/Sparc specific version. + Copyright (C) 1996, 1997, 1998, 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifdef _ERRNO_H + +# undef EDOM +# undef EILSEQ +# undef ERANGE +# include <linux/errno.h> + +/* Linux has no ENOTSUP error code. */ +# define ENOTSUP EOPNOTSUPP + +# ifndef ECANCELED +# define ECANCELED 127 +# endif + +# ifndef __ASSEMBLER__ +/* Function to get address of global `errno' variable. */ +extern int *__errno_location (void) __THROW __attribute__ ((__const__)); + +# if !defined _LIBC || defined _LIBC_REENTRANT +/* When using threads, errno is a per-thread value. */ +# define errno (*__errno_location ()) +# endif +# endif /* !__ASSEMBLER__ */ +#endif /* _ERRNO_H */ + +#if !defined _ERRNO_H && defined __need_Emath +/* This is ugly but the kernel header is not clean enough. We must + define only the values EDOM, EILSEQ and ERANGE in case __need_Emath is + defined. */ +# define EDOM 33 /* Math argument out of domain of function. */ +# define EILSEQ 122 /* Illegal byte sequence. */ +# define ERANGE 34 /* Math result not representable. */ +#endif /* !_ERRNO_H && __need_Emath */ |