about summary refs log tree commit diff
path: root/sysdeps/unix
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/bsd/sun/sigvec.S26
-rw-r--r--sysdeps/unix/bsd/sun/syscalls.list1
-rw-r--r--sysdeps/unix/configure.in8
-rw-r--r--sysdeps/unix/make_errlist.c10
4 files changed, 18 insertions, 27 deletions
diff --git a/sysdeps/unix/bsd/sun/sigvec.S b/sysdeps/unix/bsd/sun/sigvec.S
deleted file mode 100644
index c09397486f..0000000000
--- a/sysdeps/unix/bsd/sun/sigvec.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* 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
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-The GNU C Library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA.  */
-
-#include <sysdep.h>
-
-/* __sigvec is defined by sigtramp.c.  */
-
-PSEUDO (__raw_sigvec, sigvec, 3)
-	ret
-
-weak_alias (__sigvec, sigvec)
diff --git a/sysdeps/unix/bsd/sun/syscalls.list b/sysdeps/unix/bsd/sun/syscalls.list
index b9dca13bf7..1c0d44d8d9 100644
--- a/sysdeps/unix/bsd/sun/syscalls.list
+++ b/sysdeps/unix/bsd/sun/syscalls.list
@@ -1,3 +1,4 @@
 # File name	Caller	Syscall name	# args	Strong name	Weak names
 
 getdents	-	getdirentries	4	__getdirentries	getdirentries
+sigvec		-	sigvec		3	__raw_sigvec
diff --git a/sysdeps/unix/configure.in b/sysdeps/unix/configure.in
new file mode 100644
index 0000000000..37b6a5bbb9
--- /dev/null
+++ b/sysdeps/unix/configure.in
@@ -0,0 +1,8 @@
+sinclude(./aclocal.m4)dnl Autoconf lossage
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix.
+
+if test -z "$inhibit_glue"; then
+# For make_errlist.c, used in make_errlist.
+AC_CHECK_FUNCS(strerror)
+fi
diff --git a/sysdeps/unix/make_errlist.c b/sysdeps/unix/make_errlist.c
index 8c2b250134..0c6a7d948f 100644
--- a/sysdeps/unix/make_errlist.c
+++ b/sysdeps/unix/make_errlist.c
@@ -21,7 +21,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* Make a definition for sys_errlist.  */
 
 extern int sys_nerr;
+#ifndef HAVE_STRERROR
 extern char *sys_errlist[];
+#endif
 
 int
 main ()
@@ -35,7 +37,13 @@ main ()
   puts ("CONST char *CONST _sys_errlist[] =\n  {");
 
   for (i = 0; i < sys_nerr; ++i)
-    printf ("    \"%s\",\n", sys_errlist[i]);
+    printf ("    \"%s\",\n",
+#ifdef HAVE_STRERROR
+          strerror (i)
+#else /* ! HAVE_STRERROR */
+          sys_errlist[i]
+#endif /* HAVE_STRERROR */
+          );
 
   puts ("    NULL\n  };\n");