* include/bits/dlfcn.h: New file.
authorRoland McGrath <roland@gnu.org>
Sat, 10 Aug 2002 07:54:55 +0000 (07:54 +0000)
committerRoland McGrath <roland@gnu.org>
Sat, 10 Aug 2002 07:54:55 +0000 (07:54 +0000)
* elf/dl-profstub.c (_dl_mcount_wrapper_check): Add libc_hidden_def.

* include/grp.h (_nss_files_parse_grent): Add libc_hidden_proto.
* include/netinet/ether.h (_nss_files_parse_etherent): Likewise.
* include/rpc/netdb.h (_nss_files_parse_rpcent): Likewise.
* include/pwd.h (_nss_files_parse_pwent): Likewise.
* include/shadow.h (_nss_files_parse_spent): Likewise.
* include/netdb.h (_nss_files_parse_protoent,
_nss_files_parse_servent, _nss_files_parse_netent): Likewise.
* nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define.
(LINE_PARSER): Use it.
* nss/nsswitch.h (__nss_hostname_digits_dots): Add libc_hidden_proto.
* nss/digits_dots.c (__nss_hostname_digits_dots): Add libc_hidden_def.

* include/wctype.h (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
towlower, towupper): Add prototypes here too.  Add libc_hidden_proto.
* wctype/wcfuncs ((iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
towlower, towupper): Add libc_hidden_weak.

* libio/oldiopopen.c: Move #if SHLIB_COMPAT after _IO_HAVE_SYS_WAIT
#endif.

* manual/debug.texi (%MENU%): Remove trailing dot.
Reported by <hayastan132@hotmail.com>.

15 files changed:
ChangeLog
elf/dl-profstub.c
include/bits/dlfcn.h [new file with mode: 0644]
include/grp.h
include/netdb.h
include/netinet/ether.h
include/pwd.h
include/rpc/netdb.h
include/shadow.h
include/wctype.h
libio/oldiopopen.c
manual/debug.texi
nss/digits_dots.c
nss/nss_files/files-parse.c
nss/nsswitch.h

index d51c0e4..144ab85 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,31 @@
 2002-08-09  Jakub Jelinek  <jakub@redhat.com>
 
+       * include/bits/dlfcn.h: New file.
+       * elf/dl-profstub.c (_dl_mcount_wrapper_check): Add libc_hidden_def.
+
+       * include/grp.h (_nss_files_parse_grent): Add libc_hidden_proto.
+       * include/netinet/ether.h (_nss_files_parse_etherent): Likewise.
+       * include/rpc/netdb.h (_nss_files_parse_rpcent): Likewise.
+       * include/pwd.h (_nss_files_parse_pwent): Likewise.
+       * include/shadow.h (_nss_files_parse_spent): Likewise.
+       * include/netdb.h (_nss_files_parse_protoent,
+       _nss_files_parse_servent, _nss_files_parse_netent): Likewise.
+       * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define.
+       (LINE_PARSER): Use it.
+       * nss/nsswitch.h (__nss_hostname_digits_dots): Add libc_hidden_proto.
+       * nss/digits_dots.c (__nss_hostname_digits_dots): Add libc_hidden_def.
+
+       * include/wctype.h (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
+       towlower, towupper): Add prototypes here too.  Add libc_hidden_proto.
+       * wctype/wcfuncs ((iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
+       towlower, towupper): Add libc_hidden_weak.
+
+       * libio/oldiopopen.c: Move #if SHLIB_COMPAT after _IO_HAVE_SYS_WAIT
+       #endif.
+
+       * manual/debug.texi (%MENU%): Remove trailing dot.
+       Reported by <hayastan132@hotmail.com>.
+
        * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek): Add lseek
        aliases.
        (lseek): Dummy.
index 45fb4e9..c8184b9 100644 (file)
@@ -40,3 +40,4 @@ _dl_mcount_wrapper_check (void *selfpc)
   if (GL(dl_profile_map) != NULL)
     _dl_mcount ((ElfW(Addr)) RETURN_ADDRESS (0), (ElfW(Addr)) selfpc);
 }
+libc_hidden_def (_dl_mcount_wrapper_check)
diff --git a/include/bits/dlfcn.h b/include/bits/dlfcn.h
new file mode 100644 (file)
index 0000000..cb4a5c2
--- /dev/null
@@ -0,0 +1,4 @@
+#include_next <bits/dlfcn.h>
+
+extern void _dl_mcount_wrapper_check (void *__selfpc);
+libc_hidden_proto (_dl_mcount_wrapper_check)
index 984483b..4469d78 100644 (file)
@@ -31,6 +31,7 @@ struct parser_data;
 extern int _nss_files_parse_grent (char *line, struct group *result,
                                   struct parser_data *data,
                                   size_t datalen, int *errnop);
+libc_hidden_proto (_nss_files_parse_grent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                           \
 extern enum nss_status _nss_ ## service ## _setgrent (int);               \
index 9b1a1ab..3f3fc18 100644 (file)
@@ -199,7 +199,9 @@ extern enum nss_status _nss_netgroup_parseline (char **cursor,
                                                struct __netgrent *result,
                                                char *buffer, size_t buflen,
                                                int *errnop);
-
+libc_hidden_proto (_nss_files_parse_protoent)
+libc_hidden_proto (_nss_files_parse_servent)
+libc_hidden_proto (_nss_files_parse_netent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                              \
 extern enum nss_status _nss_ ## service ## _setprotoent (int);               \
index bf01654..2a9efae 100644 (file)
@@ -17,6 +17,7 @@ struct parser_data;
 extern int _nss_files_parse_etherent (char *line, struct etherent *result,
                                      struct parser_data *data,
                                      size_t datalen, int *errnop);
+libc_hidden_proto (_nss_files_parse_etherent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                              \
 extern enum nss_status _nss_ ## service ## _setetherent (int __stayopen);     \
index 374f02a..ef9b61a 100644 (file)
@@ -29,6 +29,7 @@ struct parser_data;
 extern int _nss_files_parse_pwent (char *line, struct passwd *result,
                                   struct parser_data *data,
                                   size_t datalen, int *errnop);
+libc_hidden_proto (_nss_files_parse_pwent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                        \
 extern enum nss_status _nss_ ## service ## _setpwent (int);            \
index 71c4a09..ad7cff1 100644 (file)
@@ -26,6 +26,7 @@ struct parser_data;
 extern int _nss_files_parse_rpcent (char *line, struct rpcent *result,
                                    struct parser_data *data,
                                    size_t datalen, int *errnop);
+libc_hidden_proto (_nss_files_parse_rpcent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                              \
 extern enum nss_status _nss_ ## service ## _setrpcent (int);                 \
index 3891d79..166f684 100644 (file)
@@ -26,6 +26,7 @@ struct parser_data;
 extern int _nss_files_parse_spent (char *line, struct spwd *result,
                                   struct parser_data *data,
                                   size_t datalen, int *errnop);
+libc_hidden_proto (_nss_files_parse_spent)
 
 #define DECLARE_NSS_PROTOTYPES(service)                                        \
 extern enum nss_status _nss_ ## service ## _setspent (int);            \
index 5f818de..d094d62 100644 (file)
@@ -1,5 +1,37 @@
 #ifndef _WCTYPE_H
 
+/* We try to get wint_t from <stddef.h>, but not all GCC versions define it
+   there.  So define it ourselves if it remains undefined.  */
+# define __need_wint_t
+# include <stddef.h>
+# ifndef _WINT_T
+/* Integral type unchanged by default argument promotions that can
+   hold any value corresponding to members of the extended character
+   set, as well as at least one value that does not correspond to any
+   member of the extended character set.  */
+#  define _WINT_T
+typedef unsigned int wint_t;
+# endif
+
+/* Need to repeat these prototypes here, as wctype/wctype.h defines all
+   these as macros and thus we couldn't add libc_hidden_proto.  */
+
+extern int iswalpha (wint_t __wc);
+extern int iswdigit (wint_t __wc);
+extern int iswlower (wint_t __wc);
+extern int iswspace (wint_t __wc);
+extern int iswxdigit (wint_t __wc);
+extern wint_t towlower (wint_t __wc);
+extern wint_t towupper (wint_t __wc);
+
+libc_hidden_proto (iswalpha)
+libc_hidden_proto (iswdigit)
+libc_hidden_proto (iswlower)
+libc_hidden_proto (iswspace)
+libc_hidden_proto (iswxdigit)
+libc_hidden_proto (towlower)
+libc_hidden_proto (towupper)
+
 #include <wctype/wctype.h>
 
 /* Internal interfaces.  */
index d57ec02..b818af4 100644 (file)
@@ -43,9 +43,6 @@
 #include <sys/types.h>
 #include <sys/wait.h>
 
-#include <shlib-compat.h>
-#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
-
 #ifndef _IO_fork
 #ifdef _LIBC
 #define _IO_fork __vfork
@@ -57,6 +54,9 @@ extern _IO_pid_t _IO_fork __P ((void));
 
 #endif /* _IO_HAVE_SYS_WAIT */
 
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
+
 #ifndef _IO_pipe
 #ifdef _LIBC
 #define _IO_pipe __pipe
index a6ec0c4..b2bcb31 100644 (file)
@@ -1,6 +1,6 @@
 @node Debugging Support
 @c @node Debugging Support, , Cryptographic Functions, Top
-@c %MENU% Functions to help debugging applications.
+@c %MENU% Functions to help debugging applications
 @chapter Debugging support
 
 Applications are usually debugged using dedicated debugger programs.
index 7321ec0..4dc897c 100644 (file)
@@ -354,3 +354,4 @@ __nss_hostname_digits_dots (const char *name, struct hostent *resbuf,
 done:
   return 1;
 }
+libc_hidden_def (__nss_hostname_digits_dots)
index 4e0fffa..739ee54 100644 (file)
@@ -68,10 +68,12 @@ struct parser_data
 /* The function can't be exported, because the entdata structure
    is defined only in files-foo.c.  */
 # define parser_stclass static inline
+# define nss_files_parse_hidden_def(name)
 #else
 /* Export the line parser function so it can be used in nss_db.  */
 # define parser_stclass /* Global */
 # define parse_line CONCAT(_nss_files_parse_,ENTNAME)
+# define nss_files_parse_hidden_def(name) libc_hidden_def (name)
 #endif
 
 
@@ -101,7 +103,8 @@ parse_line (char *line, struct STRUCTURE *result,                         \
   BODY;                                                                              \
   TRAILING_LIST_PARSER;                                                              \
   return 1;                                                                  \
-}
+}                                                                            \
+nss_files_parse_hidden_def (parse_line)
 
 
 # define STRING_FIELD(variable, terminator_p, swallow)                       \
index c4d0aa6..b5e4fc3 100644 (file)
@@ -168,5 +168,6 @@ extern int __nss_hostname_digits_dots (const char *name,
                                       struct hostent **result,
                                       enum nss_status *status, int *typep,
                                       int flags, int *afp, int *h_errnop);
+libc_hidden_proto (__nss_hostname_digits_dots)
 
 #endif /* nsswitch.h */