about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-02-20 01:08:14 +0000
committerRoland McGrath <roland@gnu.org>1995-02-20 01:08:14 +0000
commit5f9e57babebe38587437ac432f26e5421f5532da (patch)
treeb7127b569ca33e355c98722376e2d9853abb049b
parent50de467103a56c688d52b7b14cea82dba79d1ad4 (diff)
downloadglibc-5f9e57babebe38587437ac432f26e5421f5532da.tar.gz
glibc-5f9e57babebe38587437ac432f26e5421f5532da.tar.xz
glibc-5f9e57babebe38587437ac432f26e5421f5532da.zip
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.

	* 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.
-rw-r--r--ChangeLog47
-rw-r--r--libc-symbols.h4
-rw-r--r--posix/Makefile2
-rw-r--r--posix/environ.c8
-rw-r--r--stdio/.cvsignore2
-rw-r--r--sysdeps/mach/hurd/start.c3
-rw-r--r--sysdeps/mach/start.c7
-rw-r--r--sysdeps/stub/start.c11
-rw-r--r--sysdeps/unix/make_errlist.c2
-rw-r--r--sysdeps/unix/sparc/start.c9
-rw-r--r--sysdeps/unix/start.c6
-rw-r--r--sysdeps/unix/sysv/irix4/start.c9
-rw-r--r--sysdeps/unix/sysv/sysv4/dup2.c4
-rw-r--r--sysdeps/unix/sysv/sysv4/sigaltstack.S2
14 files changed, 69 insertions, 47 deletions
diff --git a/ChangeLog b/ChangeLog
index f43f045752..4ea5a585e5 100644
--- 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>
 
diff --git a/libc-symbols.h b/libc-symbols.h
index d1d9fe4e19..b41c956efe 100644
--- a/libc-symbols.h
+++ b/libc-symbols.h
@@ -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")
+
+/*
 
+*/
+
 #ifdef HAVE_GNU_LD
 
 /* Symbol set support macros.  */
diff --git a/posix/Makefile b/posix/Makefile
index b6851b99f3..ae4c1a5fb0 100644
--- a/posix/Makefile
+++ b/posix/Makefile
@@ -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
index 0000000000..3eee48e7ea
--- /dev/null
+++ b/posix/environ.c
@@ -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)
diff --git a/stdio/.cvsignore b/stdio/.cvsignore
index 1f69fd919a..fd9dc4ea03 100644
--- a/stdio/.cvsignore
+++ b/stdio/.cvsignore
@@ -2,3 +2,5 @@
 =*
 TODO COPYING* AUTHORS copyr-* copying.*
 glibc-*
+
+mpn-copy.mk
diff --git a/sysdeps/mach/hurd/start.c b/sysdeps/mach/hurd/start.c
index 91be7eaefe..10d6e72228 100644
--- a/sysdeps/mach/hurd/start.c
+++ b/sysdeps/mach/hurd/start.c
@@ -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));
diff --git a/sysdeps/mach/start.c b/sysdeps/mach/start.c
index 26abc23f53..c2ea3e3b7b 100644
--- a/sysdeps/mach/start.c
+++ b/sysdeps/mach/start.c
@@ -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);
diff --git a/sysdeps/stub/start.c b/sysdeps/stub/start.c
index b8bb04bbb4..9d412011f9 100644
--- a/sysdeps/stub/start.c
+++ b/sysdeps/stub/start.c
@@ -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;
diff --git a/sysdeps/unix/make_errlist.c b/sysdeps/unix/make_errlist.c
index 40b4f820c0..705dcfe88a 100644
--- a/sysdeps/unix/make_errlist.c
+++ b/sysdeps/unix/make_errlist.c
@@ -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");
diff --git a/sysdeps/unix/sparc/start.c b/sysdeps/unix/sparc/start.c
index e0f39f5b73..f8567d2103 100644
--- a/sysdeps/unix/sparc/start.c
+++ b/sysdeps/unix/sparc/start.c
@@ -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));
 
diff --git a/sysdeps/unix/start.c b/sysdeps/unix/start.c
index da7ec71ffb..feb5f44fb8 100644
--- a/sysdeps/unix/start.c
+++ b/sysdeps/unix/start.c
@@ -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));
 
diff --git a/sysdeps/unix/sysv/irix4/start.c b/sysdeps/unix/sysv/irix4/start.c
index 4382e6f855..cd86f85244 100644
--- a/sysdeps/unix/sysv/irix4/start.c
+++ b/sysdeps/unix/sysv/irix4/start.c
@@ -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));
 
diff --git a/sysdeps/unix/sysv/sysv4/dup2.c b/sysdeps/unix/sysv/sysv4/dup2.c
index c7015fce7e..7d36e0e352 100644
--- a/sysdeps/unix/sysv/sysv4/dup2.c
+++ b/sysdeps/unix/sysv/sysv4/dup2.c
@@ -1,4 +1,2 @@
 /* SVR4 uses the POSIX dup2.  */
-#include <sysdeps/posix/__dup2.c>
-
-weak_alias (__dup2, dup2)
+#include <sysdeps/posix/dup2.c>
diff --git a/sysdeps/unix/sysv/sysv4/sigaltstack.S b/sysdeps/unix/sysv/sysv4/sigaltstack.S
index e7e4060fba..f7cf0d57f4 100644
--- a/sysdeps/unix/sysv/sysv4/sigaltstack.S
+++ b/sysdeps/unix/sysv/sysv4/sigaltstack.S
@@ -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>