about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/unix/bsd/Attic/osf1/alpha/start.S7
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/start.S7
-rw-r--r--sysdeps/unix/start.c12
3 files changed, 4 insertions, 22 deletions
diff --git a/sysdeps/unix/bsd/Attic/osf1/alpha/start.S b/sysdeps/unix/bsd/Attic/osf1/alpha/start.S
index 8b7109a512..52eb03667f 100644
--- a/sysdeps/unix/bsd/Attic/osf1/alpha/start.S
+++ b/sysdeps/unix/bsd/Attic/osf1/alpha/start.S
@@ -18,13 +18,6 @@ Cambridge, MA 02139, USA.  */
 
 #include <sysdep.h>
 
-#ifndef HAVE_WEAK_SYMBOLS
-#define __environ environ
-#else
-weak_alias (__environ, environ)
-#endif
-
-.comm __environ,	8
 .comm errno,		4
 
 !.sdata
diff --git a/sysdeps/unix/bsd/ultrix4/mips/start.S b/sysdeps/unix/bsd/ultrix4/mips/start.S
index ec0f9d833d..eec8ce08be 100644
--- a/sysdeps/unix/bsd/ultrix4/mips/start.S
+++ b/sysdeps/unix/bsd/ultrix4/mips/start.S
@@ -18,13 +18,6 @@ Cambridge, MA 02139, USA.  */
 
 #include <sysdep.h>
 
-#ifndef HAVE_WEAK_SYMBOLS
-#define __environ environ
-#else
-weak_alias (__environ, environ)
-#endif
-
-.comm __environ,	4
 .comm errno,		4
 
 ENTRY(__start)
diff --git a/sysdeps/unix/start.c b/sysdeps/unix/start.c
index feb5f44fb8..62c9bd9f38 100644
--- a/sysdeps/unix/start.c
+++ b/sysdeps/unix/start.c
@@ -35,11 +35,8 @@ weak_alias (__data_start, data_start)
 #define	DECL_DUMMIES
 #endif
 
-VOLATILE int errno;
-
-#ifndef	HAVE_WEAK_SYMBOLS
-#undef	environ
-#define	__environ	environ
+#ifndef errno
+volatile int errno;
 #endif
 
 extern void EXFUN(__libc_init, (int argc, char **argv, char **envp));
@@ -66,11 +63,10 @@ DEFUN_VOID(_start)
   start1();
 }
 
-#if !defined (NO_UNDERSCORES) && defined (HAVE_GNU_LD) && !defined (__GNUC__)
+#if !defined (NO_UNDERSCORES) && defined (HAVE_WEAK_SYMBOLS)
 /* Make an alias called `start' (no leading underscore,
    so it can't conflict with C symbols) for `_start'.  */
-asm(".stabs \"start\",11,0,0,0");
-asm(".stabs \"__start\",1,0,0,0");
+asm (".weak start; start = _start");
 #endif
 
 #endif