Sun Feb 19 17:46:13 1995 Roland McGrath <roland@duality.gnu.ai.mit.edu>
authorRoland McGrath <roland@gnu.org>
Mon, 20 Feb 1995 01:08:14 +0000 (01:08 +0000)
committerRoland McGrath <roland@gnu.org>
Mon, 20 Feb 1995 01:08:14 +0000 (01:08 +0000)
* posix/Makefile (aux): Add environ.
* posix/environ.c: New file.
* sysdeps/unix/sparc/start.c: Remove __environ definition.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/mach/hurd/start.c: Likewise.
* sysdeps/mach/start.c: Likewise.
* sysdeps/stub/start.c: Likewise.

* sysdeps/unix/make_errlist.c: In produced program, test
  HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
* sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
   Remove extra weak alias.

* sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
  in #include.

* libc-symbols.h: Put comment around ^L to pacify Solaris as.

* sysdeps/posix/Makefile (cded-objdir-includes): New variable
  replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
  $(CPPFLAGS).
(mk-stdiolim): Use it instead.

* mach/mach_init.c (__vm_page_size): Make it initialized.  It does
  not work to make a weak alias to a bss symbol.

* stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
(tests): Add test-fwrite.
* stdio/test-fwrite.c: New file.

* stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
  __strtold.

* Makefile (autoconf-it): New canned sequence.  Do cvs commit if
  there is a CVS directory.
(configure, %/configure): Use $(autoconf-it) for cmds.
* Make-dist: Likewise.
* Makerules ($(gpl2lgpl)): Likewise.
  inlines cause trouble for files defining global register variables.
* stdio/vfprintf.c: Set PREC to zero for %. without following digit.

14 files changed:
ChangeLog
libc-symbols.h
posix/Makefile
posix/environ.c [new file with mode: 0644]
stdio/.cvsignore
sysdeps/mach/hurd/start.c
sysdeps/mach/start.c
sysdeps/stub/start.c
sysdeps/unix/make_errlist.c
sysdeps/unix/sparc/start.c
sysdeps/unix/start.c
sysdeps/unix/sysv/irix4/start.c
sysdeps/unix/sysv/sysv4/dup2.c
sysdeps/unix/sysv/sysv4/sigaltstack.S

index f43f045..4ea5a58 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,50 @@
+Sun Feb 19 17:46:13 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
+
+       * posix/Makefile (aux): Add environ.
+       * posix/environ.c: New file.
+       * sysdeps/unix/sparc/start.c: Remove __environ definition.
+       * sysdeps/unix/start.c: Likewise.
+       * sysdeps/unix/sysv/irix4/start.c: Likewise.
+       * sysdeps/mach/hurd/start.c: Likewise.
+       * sysdeps/mach/start.c: Likewise.
+       * sysdeps/stub/start.c: Likewise.
+
+       * sysdeps/unix/make_errlist.c: In produced program, test
+       HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
+       * sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
+       Remove extra weak alias.
+
+       * sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
+       in #include.
+
+       * libc-symbols.h: Put comment around ^L to pacify Solaris as.
+
+       * sysdeps/posix/Makefile (cded-objdir-includes): New variable
+       replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
+       $(CPPFLAGS).
+       (mk-stdiolim): Use it instead.
+
 Fri Feb 17 12:16:27 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
 
+       * mach/mach_init.c (__vm_page_size): Make it initialized.  It does
+       not work to make a weak alias to a bss symbol.
+
+       * stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
+       (tests): Add test-fwrite.
+       * stdio/test-fwrite.c: New file.
+
+       * stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
+       __strtold.
+
+       * Makefile (autoconf-it): New canned sequence.  Do cvs commit if
+       there is a CVS directory.
+       (configure, %/configure): Use $(autoconf-it) for cmds.
+       * Make-dist: Likewise.
        * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Do cvs commit
        if there is a CVS directory.
        * sysdeps/sparc/Makefile (divrem output): Likewise.
        * sysdeps/alpha/Makefile (divrem output): Likewise.
+       * Makerules ($(gpl2lgpl)): Likewise.
 
        * Makerules (rule to install lib%.a from $(install-lib)): Fix
        patsubst to elide ranlib for $(non-lib.a).
@@ -189,8 +230,7 @@ Tue Feb  7 12:17:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
        * mach/mig_strncpy.c: Include string.h.
 
        * sysdeps/mach/sysdep.h: Don't #include <mach/mig_support.h>.  Its
-       inlines cause trouble for files defining global register
-       variables.
+       inlines cause trouble for files defining global register variables.
 
        * stdio/vfprintf.c: Use _strerror_internal for %m.
 
@@ -323,8 +363,7 @@ Thu Feb  2 20:06:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
 
        * io/ftw.c (ftw, ftw_dir): Treat ENOENT from stat like EACCES.
 
-       * stdio/vfprintf.c: Set PREC to zero for %. without following
-       digit.
+       * stdio/vfprintf.c: Set PREC to zero for %. without following digit.
 
 Tue Jan 31 13:49:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
 
index d1d9fe4..b41c956 100644 (file)
@@ -128,7 +128,11 @@ Cambridge, MA 02139, USA.  */
 /* A canned warning for sysdeps/stub functions.  */
 #define        stub_warning(name) \
   link_warning ("warning: " #name " is not implemented and will always fail")
+
+/*
 \f
+*/
+
 #ifdef HAVE_GNU_LD
 
 /* Symbol set support macros.  */
index b6851b9..ae4c1a5 100644 (file)
@@ -43,7 +43,7 @@ routines :=                                                                 \
        glob fnmatch                                                          \
        confstr                                                               \
        getopt getopt1
-aux            := init-posix
+aux            := init-posix environ
 tests          := tstgetopt testfnm
 others         := getconf
 install-bin    := getconf
diff --git a/posix/environ.c b/posix/environ.c
new file mode 100644 (file)
index 0000000..3eee48e
--- /dev/null
@@ -0,0 +1,8 @@
+/* This file just defines the `__environ' variable (and alias `environ').  */
+
+#include <unistd.h>
+#include <stddef.h>
+
+/* This must be initialized; we cannot have a weak alias into bss.  */
+char **__environ = NULL;
+weak_alias (__environ, environ)
index 1f69fd9..fd9dc4e 100644 (file)
@@ -2,3 +2,5 @@
 =*
 TODO COPYING* AUTHORS copyr-* copying.*
 glibc-*
+
+mpn-copy.mk
index 91be7ea..10d6e72 100644 (file)
@@ -46,9 +46,6 @@ unsigned long int *__hurd_sigthread_variables;
 vm_address_t _hurd_stack_base;
 vm_size_t _hurd_stack_size;
 
-char **__environ;
-weak_alias (__environ, environ)
-
 /* Things that want to be run before _hurd_init or much anything else.
    Importantly, these are called before anything tries to use malloc.  */
 DEFINE_HOOK (_hurd_preinit_hook, (void));
index 26abc23..c2ea3e3 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1993, 1994, 1995 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
@@ -31,11 +31,6 @@ int __data_start = 0;
 
 volatile int errno;
 
-#ifndef        HAVE_GNU_LD
-#define        __environ       environ
-#endif
-char **__environ;
-
 extern void __mach_init (void);
 extern void __libc_init (int argc, char **argv, char **envp);
 extern int main (int argc, char **argv, char **envp);
index b8bb04b..9d41201 100644 (file)
@@ -6,11 +6,10 @@
    This file should be prepared to be the first thing in the text section (on
    Unix systems), or otherwise appropriately special.  */
 
-volatile int errno;
-
-#ifndef HAVE_GNU_LD
-#undef environ
-#define __environ environ
+/* The first piece of initialized data.  */
+int __data_start = 0;
+#ifdef HAVE_WEAK_SYMBOLS
+weak_alias (__data_start, data_start)
 #endif
 
-char **__environ;
+volatile int errno;
index 40b4f82..705dcfe 100644 (file)
@@ -31,7 +31,7 @@ main ()
   puts ("#include \"ansidecl.h\"\n#include <stddef.h>\n");
   puts ("\n/* This is a list of all known `errno' codes.  */\n");
 
-  puts ("#ifndef HAVE_GNU_LD");
+  puts ("#ifndef HAVE_WEAK_SYMBOLS");
   puts ("#define _sys_nerr\tsys_nerr");
   puts ("#define _sys_errlist\tsys_errlist");
   puts ("#endif");
index e0f39f5..f8567d2 100644 (file)
@@ -42,15 +42,6 @@ weak_alias (__data_start, data_start)
 
 VOLATILE int errno;
 
-#ifdef HAVE_WEAK_SYMBOLS
-weak_alias (__environ, environ)
-#else
-#undef environ
-#define        __environ       environ
-#endif
-
-char **__environ;
-
 extern void EXFUN(__libc_init, (int argc, char **argv, char **envp));
 extern int EXFUN(main, (int argc, char **argv, char **envp));
 
index da7ec71..feb5f44 100644 (file)
@@ -37,15 +37,11 @@ weak_alias (__data_start, data_start)
 
 VOLATILE int errno;
 
-#ifdef HAVE_WEAK_SYMBOLS
-weak_alias (__environ, environ)
-#else
+#ifndef        HAVE_WEAK_SYMBOLS
 #undef environ
 #define        __environ       environ
 #endif
 
-char **__environ;
-
 extern void EXFUN(__libc_init, (int argc, char **argv, char **envp));
 extern int EXFUN(main, (int argc, char **argv, char **envp));
 
index 4382e6f..cd86f85 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1995 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,13 +30,6 @@ int __data_start = 0;
 
 VOLATILE int errno = 0;
 
-#ifndef        HAVE_GNU_LD
-#undef environ
-#define        __environ       environ
-#endif
-
-char **__environ;
-
 extern void EXFUN(__libc_init, (int argc, char **argv, char **envp));
 extern int EXFUN(main, (int argc, char **argv, char **envp));
 
index c7015fc..7d36e0e 100644 (file)
@@ -1,4 +1,2 @@
 /* SVR4 uses the POSIX dup2.  */
-#include <sysdeps/posix/__dup2.c>
-
-weak_alias (__dup2, dup2)
+#include <sysdeps/posix/dup2.c>
index e7e4060..f7cf0d5 100644 (file)
@@ -1,2 +1,2 @@
 /* SVR4 uses the BSD 4.4 sigaltstack syscall.  */
-#include <sysdeps/unix/bsd/bsd4.4/sigaltstk.S>
+#include <sysdeps/unix/bsd/bsd4.4/sigaltstack.S>