Update.
authorAndreas Jaeger <aj@suse.de>
Tue, 5 Dec 2000 17:34:28 +0000 (17:34 +0000)
committerAndreas Jaeger <aj@suse.de>
Tue, 5 Dec 2000 17:34:28 +0000 (17:34 +0000)
2000-12-05  Andreas Jaeger  <aj@suse.de>

* elf/dl-misc.c (_dl_sysdep_read_whole_file): Mark as
internal_function.
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): Likewise.

* sysdeps/generic/dl-cache.c: Remove declaration of
_dl_sysdep_read_whole_file.

* elf/dl-load.c (_dl_map_object): Remove declaration of
_dl_load_cache_lookup.

* sysdeps/generic/ldsodefs.h: Add declarations of
_dl_load_cache_lookup, _dl_unload_cache,
_dl_sysdep_read_whole_file, _dl_sysdep_start and
_dl_sysdep_start_cleanup.

* elf/rtld.c: Remove prototypes that are defined in ldsodefs.h
now.

* elf/dl-misc.c: Include <ldsodefs.h> to get prototypes.
* sysdeps/generic/dl-environ.c: Likewise.

* stdio-common/printf_fp.c: Include <gmp.h> instead of
<stdlib/gmp.h>.
* math/atest-exp.c: Likewise.
* math/atest-exp2.c: Likewise.
* math/atest-sincos.c: Likewise.
* stdio-common/_itoa.c: Likewise.
* stdio-common/_itowa.c: Likewise.

* include/gmp.h: New file with internal prototypes.

* sysdeps/generic/longjmp.c: Move _longjmp_unwind declaration from
here to...
* include/setjmp.h: ...here.

* locale/Makefile (routines): Remove codeset_name since it's not
needed anywhere.

* locale/codeset_name.c: Removed.

18 files changed:
ChangeLog
elf/dl-load.c
elf/dl-misc.c
elf/rtld.c
include/gmp.h [new file with mode: 0644]
include/setjmp.h
locale/Makefile
math/atest-exp.c
math/atest-exp2.c
math/atest-sincos.c
stdio-common/_itoa.c
stdio-common/_itowa.c
stdio-common/printf_fp.c
sysdeps/generic/dl-cache.c
sysdeps/generic/dl-environ.c
sysdeps/generic/dl-sysdep.c
sysdeps/generic/ldsodefs.h
sysdeps/generic/longjmp.c

index 96f6abe..11d3731 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,46 @@
+2000-12-05  Andreas Jaeger  <aj@suse.de>
+
+       * elf/dl-misc.c (_dl_sysdep_read_whole_file): Mark as
+       internal_function.
+       * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
+       * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): Likewise.
+
+       * sysdeps/generic/dl-cache.c: Remove declaration of
+       _dl_sysdep_read_whole_file.
+
+       * elf/dl-load.c (_dl_map_object): Remove declaration of
+       _dl_load_cache_lookup.
+
+       * sysdeps/generic/ldsodefs.h: Add declarations of
+       _dl_load_cache_lookup, _dl_unload_cache,
+       _dl_sysdep_read_whole_file, _dl_sysdep_start and
+       _dl_sysdep_start_cleanup.
+
+       * elf/rtld.c: Remove prototypes that are defined in ldsodefs.h
+       now.
+
+       * elf/dl-misc.c: Include <ldsodefs.h> to get prototypes.
+       * sysdeps/generic/dl-environ.c: Likewise.
+
+       * stdio-common/printf_fp.c: Include <gmp.h> instead of
+       <stdlib/gmp.h>.
+       * math/atest-exp.c: Likewise.
+       * math/atest-exp2.c: Likewise.
+       * math/atest-sincos.c: Likewise.
+       * stdio-common/_itoa.c: Likewise.
+       * stdio-common/_itowa.c: Likewise.
+
+       * include/gmp.h: New file with internal prototypes.
+
+       * sysdeps/generic/longjmp.c: Move _longjmp_unwind declaration from
+       here to...
+       * include/setjmp.h: ...here.
+
+       * locale/Makefile (routines): Remove codeset_name since it's not
+       needed anywhere.
+
+       * locale/codeset_name.c: Removed.
+
 2000-12-05  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/unix/sysv/aix/sys/param.h: Define MAXHOSTNAMELEN here.
index 45f38f3..600f5f9 100644 (file)
@@ -1586,7 +1586,6 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
        {
          /* Check the list of libraries in the file /etc/ld.so.cache,
             for compatibility with Linux's ldconfig program.  */
-         extern const char *_dl_load_cache_lookup (const char *name);
          const char *cached = _dl_load_cache_lookup (name);
 
 #ifdef SHARED
index 4a811a0..5629c2a 100644 (file)
@@ -19,6 +19,7 @@
 
 #include <assert.h>
 #include <fcntl.h>
+#include <ldsodefs.h>
 #include <link.h>
 #include <stdarg.h>
 #include <string.h>
@@ -42,6 +43,7 @@ _dl_sysdep_open_zero_fill (void)
    protections.  *SIZEP gets the size of the file.  */
 
 void *
+internal_function
 _dl_sysdep_read_whole_file (const char *file, size_t *sizep, int prot)
 {
   void *result;
index c44506a..5c794d9 100644 (file)
 
 #include <assert.h>
 
-/* System-specific function to do initial startup for the dynamic linker.
-   After this, file access calls and getenv must work.  This is responsible
-   for setting __libc_enable_secure if we need to be secure (e.g. setuid),
-   and for setting _dl_argc and _dl_argv, and then calling _dl_main.  */
-extern ElfW(Addr) _dl_sysdep_start (void **start_argptr,
-                                   void (*dl_main) (const ElfW(Phdr) *phdr,
-                                                    ElfW(Half) phent,
-                                                    ElfW(Addr) *user_entry));
-extern void _dl_sysdep_start_cleanup (void);
-
-/* This function is used to unload the cache file if necessary.  */
-extern void _dl_unload_cache (void);
-
-/* System-dependent function to read a file's whole contents
-   in the most convenient manner available.  */
-extern void *_dl_sysdep_read_whole_file (const char *filename,
-                                        size_t *filesize_ptr,
-                                        int mmap_prot);
-
 /* Helper function to handle errors while resolving symbols.  */
 static void print_unresolved (int errcode, const char *objname,
                              const char *errsting);
diff --git a/include/gmp.h b/include/gmp.h
new file mode 100644 (file)
index 0000000..ff26658
--- /dev/null
@@ -0,0 +1,23 @@
+#ifndef __GMP_H__
+
+#include <stdlib/gmp.h>
+
+/* Now define the internal interfaces.  */
+extern mp_size_t __mpn_extract_double (mp_ptr res_ptr, mp_size_t size,
+                                      int *expt, int *is_neg,
+                                      double value);
+
+extern mp_size_t __mpn_extract_long_double (mp_ptr res_ptr, mp_size_t size,
+                                           int *expt, int *is_neg,
+                                           long double value);
+
+extern float __mpn_construct_float (mp_srcptr frac_ptr, int expt, int sign);
+
+extern double __mpn_construct_double (mp_srcptr frac_ptr, int expt,
+                                     int negative);
+
+extern long double __mpn_construct_long_double (mp_srcptr frac_ptr, int expt,
+                                               int sign);
+
+
+#endif
index 44dae78..5093ff7 100644 (file)
@@ -12,4 +12,7 @@ extern void __longjmp (__jmp_buf __env, int __val)
    This is used by the machine-dependent definition of `__sigsetjmp'.
    Always returns zero, for convenience.  */
 extern int __sigjmp_save (jmp_buf __env, int __savemask);
+
+extern void _longjmp_unwind (jmp_buf env, int val);
+
 #endif
index 0710863..b7a2849 100644 (file)
@@ -35,7 +35,7 @@ distribute    = localeinfo.h categories.def iso-639.def iso-3166.def \
                              locfile.h charmap.h repertoire.h localedef.h \
                              3level.h charmap-dir.h)
 routines       = setlocale findlocale loadlocale localeconv nl_langinfo \
-                 nl_langinfo_l mb_cur_max codeset_name \
+                 nl_langinfo_l mb_cur_max \
                  newlocale duplocale freelocale
 tests          = tst-C-locale
 categories     = ctype messages monetary numeric time paper name \
index 677d192..e5f4752 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <stdio.h>
 #include <math.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <string.h>
 #include <limits.h>
 #include <assert.h>
index 6a17039..6a41398 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <stdio.h>
 #include <math.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <string.h>
 #include <limits.h>
 #include <assert.h>
index b07dea3..d82f62a 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <stdio.h>
 #include <math.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <string.h>
 #include <limits.h>
 #include <assert.h>
index 2eca838..ef96177 100644 (file)
@@ -1,5 +1,5 @@
 /* Internal function for converting integers to ASCII.
-   Copyright (C) 1994, 1995, 1996, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Torbjorn Granlund <tege@matematik.su.se>
    and Ulrich Drepper <drepper@gnu.org>.
@@ -20,7 +20,7 @@
    Boston, MA 02111-1307, USA.  */
 
 #include <gmp-mparam.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <stdlib/gmp-impl.h>
 #include <stdlib/longlong.h>
 
index 430415b..4c93b31 100644 (file)
@@ -1,5 +1,5 @@
 /* Internal function for converting integers to ASCII.
-   Copyright (C) 1994, 1995, 1996, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Torbjorn Granlund <tege@matematik.su.se>
    and Ulrich Drepper <drepper@gnu.org>.
@@ -20,7 +20,7 @@
    Boston, MA 02111-1307, USA.  */
 
 #include <gmp-mparam.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <stdlib/gmp-impl.h>
 #include <stdlib/longlong.h>
 
index 4d4370a..2147b29 100644 (file)
@@ -30,7 +30,7 @@
 #include <ctype.h>
 #include <float.h>
 #include <gmp-mparam.h>
-#include <stdlib/gmp.h>
+#include <gmp.h>
 #include <stdlib/gmp-impl.h>
 #include <stdlib/longlong.h>
 #include <stdlib/fpioconst.h>
index ea4239a..d92b4ba 100644 (file)
 
 #include <stdio-common/_itoa.h>
 
-/* System-dependent function to read a file's whole contents
-   in the most convenient manner available.  */
-extern void *_dl_sysdep_read_whole_file (const char *filename,
-                                        size_t *filesize_ptr,
-                                        int mmap_prot);
-
 extern const char *_dl_platform;
 
 #ifndef _DL_PLATFORMS_COUNT
@@ -150,6 +144,7 @@ while (0)
    or null if none is found.  */
 
 const char *
+internal_function
 _dl_load_cache_lookup (const char *name)
 {
   int left, right, middle;
index 1963791..f5e0f8d 100644 (file)
@@ -18,7 +18,7 @@
    Boston, MA 02111-1307, USA.  */
 
 #include <string.h>
-
+#include <ldsodefs.h>
 
 extern char **_environ;
 
index 88340a6..bd4036c 100644 (file)
@@ -191,6 +191,7 @@ _dl_sysdep_start (void **start_argptr,
 }
 
 void
+internal_function
 _dl_sysdep_start_cleanup (void)
 {
 }
index ad4cbe6..032e26e 100644 (file)
@@ -456,6 +456,36 @@ extern const struct r_strlenpair *_dl_important_hwcaps (const char *platform,
                                                        size_t *max_capstrlen)
      internal_function;
 
+/* Look up NAME in ld.so.cache and return the file name stored there,
+   or null if none is found.  */
+extern const char *_dl_load_cache_lookup (const char *name)
+     internal_function;
+
+/* If the system does not support MAP_COPY we cannot leave the file open
+   all the time since this would create problems when the file is replaced.
+   Therefore we provide this function to close the file and open it again
+   once needed.  */
+extern void _dl_unload_cache (void);
+
+/* System-dependent function to read a file's whole contents
+   in the most convenient manner available.  */
+extern void *_dl_sysdep_read_whole_file (const char *file, size_t *sizep,
+                                        int prot)
+     internal_function;
+
+/* System-specific function to do initial startup for the dynamic linker.
+   After this, file access calls and getenv must work.  This is responsible
+   for setting __libc_enable_secure if we need to be secure (e.g. setuid),
+   and for setting _dl_argc and _dl_argv, and then calling _dl_main.  */
+extern ElfW(Addr) _dl_sysdep_start (void **start_argptr,
+                                   void (*dl_main) (const ElfW(Phdr) *phdr,
+                                                    ElfW(Word) phnum,
+                                                    ElfW(Addr) *user_entry));
+
+extern void _dl_sysdep_start_cleanup (void)
+     internal_function;
+
+
 __END_DECLS
 
 #endif /* ldsodefs.h */
index 1a4850f..33046d5 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 94, 95, 97, 98 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 92, 94, 95, 97, 98, 2000 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
@@ -21,8 +21,6 @@
 #include <signal.h>
 
 
-extern void _longjmp_unwind (jmp_buf env, int val);
-
 /* Set the signal mask to the one specified in ENV, and jump
    to the position specified in ENV, causing the setjmp
    call there to return VAL, or 1 if VAL is 0.  */