about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-11-22 04:23:05 +0000
committerRoland McGrath <roland@gnu.org>2002-11-22 04:23:05 +0000
commit54789f38162e12edd8bc2553ae7b72b558262f07 (patch)
tree9a2c4fb9bc89ee0ab3822354599994aaee01da6f /sysdeps
parent1c120cb8e7eddf810ae3e997eebd689506c98307 (diff)
downloadglibc-54789f38162e12edd8bc2553ae7b72b558262f07.tar.gz
glibc-54789f38162e12edd8bc2553ae7b72b558262f07.tar.xz
glibc-54789f38162e12edd8bc2553ae7b72b558262f07.zip
* sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
	__libc_multiple_libcs here.  Call __setfpucw.

	* locale/localeinfo.h (struct locale_data): Revert last change.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/mach/hurd/i386/init-first.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
index b3804cba92..af79d87d08 100644
--- a/sysdeps/mach/hurd/i386/init-first.c
+++ b/sysdeps/mach/hurd/i386/init-first.c
@@ -65,6 +65,16 @@ DEFINE_HOOK (_hurd_preinit_hook, (void));
 static void
 posixland_init (int argc, char **argv, char **envp)
 {
+  __libc_multiple_libcs = &_dl_starting_up && !_dl_starting_up;
+
+  /* Make sure we don't initialize twice.  */
+  if (!__libc_multiple_libcs)
+    {
+      /* Set the FPU control word to the proper default value.  */
+      __setfpucw (__fpu_control);
+    }
+
+  /* Save the command-line arguments.  */
   __libc_argc = argc;
   __libc_argv = argv;
   __environ = envp;