diff options
Diffstat (limited to 'sysdeps/generic')
-rw-r--r-- | sysdeps/generic/bits/confname.h | 6 | ||||
-rw-r--r-- | sysdeps/generic/bits/dlfcn.h | 7 | ||||
-rw-r--r-- | sysdeps/generic/bits/sigthread.h | 24 | ||||
-rw-r--r-- | sysdeps/generic/bits/types.h | 3 | ||||
-rw-r--r-- | sysdeps/generic/dl-sysdep.c | 20 |
5 files changed, 57 insertions, 3 deletions
diff --git a/sysdeps/generic/bits/confname.h b/sysdeps/generic/bits/confname.h index 8aac5cb67d..229088d67d 100644 --- a/sysdeps/generic/bits/confname.h +++ b/sysdeps/generic/bits/confname.h @@ -1,5 +1,5 @@ /* `sysconf', `pathconf', and `confstr' NAME values. Generic version. - Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1993, 1995, 1996, 1997, 1998 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 @@ -48,8 +48,10 @@ enum #define _PC_ASYNC_IO _PC_ASYNC_IO _PC_PRIO_IO, #define _PC_PRIO_IO _PC_PRIO_IO - _PC_SOCK_MAXBUF + _PC_SOCK_MAXBUF, #define _PC_SOCK_MAXBUF _PC_SOCK_MAXBUF + _PC_FILESIZEBITS +#define _PC_FILESIZEBITS _PC_FILESIZEBITS }; /* Values for the argument to `sysconf'. */ diff --git a/sysdeps/generic/bits/dlfcn.h b/sysdeps/generic/bits/dlfcn.h index 7c33694018..c2b1c9a7a1 100644 --- a/sysdeps/generic/bits/dlfcn.h +++ b/sysdeps/generic/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependand definitions for run-time dynamic loading. - Copyright (C) 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998 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 @@ -30,3 +30,8 @@ the symbols of the loaded object and its dependencies are made visible as if the object were linked directly into the program. */ #define RTLD_GLOBAL 0x100 + +/* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. + The implementation does this by default and so we can define the + value to zero. */ +#define RTLD_LOCAL 0 diff --git a/sysdeps/generic/bits/sigthread.h b/sysdeps/generic/bits/sigthread.h new file mode 100644 index 0000000000..de6f2dc73e --- /dev/null +++ b/sysdeps/generic/bits/sigthread.h @@ -0,0 +1,24 @@ +/* Signal handling function for threaded programs. + Copyright (C) 1998 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifndef _SIGNAL_H +# error "Never include this file directly. Use <signal.h> instead" +#endif + +/* There are none available in this configuration. */ diff --git a/sysdeps/generic/bits/types.h b/sysdeps/generic/bits/types.h index b985a3a49f..c6b7b8884e 100644 --- a/sysdeps/generic/bits/types.h +++ b/sysdeps/generic/bits/types.h @@ -115,4 +115,7 @@ typedef __u_quad_t __fsfilcnt64_t; typedef int __t_scalar_t; typedef unsigned int __t_uscalar_t; +/* This definition makes this file kind of architecture dependent. */ +typedef long int __intptr_t; + #endif /* bits/types.h */ diff --git a/sysdeps/generic/dl-sysdep.c b/sysdeps/generic/dl-sysdep.c index 758fb754e7..6516ba9b1a 100644 --- a/sysdeps/generic/dl-sysdep.c +++ b/sysdeps/generic/dl-sysdep.c @@ -279,6 +279,26 @@ _dl_next_ld_env_entry (char ***position) return result; } +void +unsetenv (const char *name) +{ + const size_t len = strlen (name); + char **ep; + + for (ep = __environ; *ep != NULL; ++ep) + if (!strncmp (*ep, name, len) && (*ep)[len] == '=') + { + /* Found it. Remove this pointer by moving later ones back. */ + char **dp = ep; + + do + dp[0] = dp[1]; + while (*dp++); + /* Continue the loop in case NAME appears again. */ + } +} + + /* Return an array of useful/necessary hardware capability names. */ const struct r_strlenpair * internal_function |