aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libiberty/ChangeLog5
-rw-r--r--libiberty/strerror.c9
2 files changed, 13 insertions, 1 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 2bf4935..40aea27 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,8 @@
+2003-10-01 Daniel Jacobowitz <drow@mvista.com>
+
+ * strerror.c: Don't provide or reference sys_errlist if
+ strerror is available.
+
2003-10-01 H.J. Lu <hongjiu.lu@intel.com>
* configure.in: Check if $MAKEINFO is missing.
diff --git a/libiberty/strerror.c b/libiberty/strerror.c
index 18050c2..bee9bfc 100644
--- a/libiberty/strerror.c
+++ b/libiberty/strerror.c
@@ -7,6 +7,7 @@
#include "config.h"
+#ifndef HAVE_STRERROR
#ifdef HAVE_SYS_ERRLIST
/* Note that errno.h (not sure what OS) or stdio.h (BSD 4.4, at least)
might declare sys_errlist in a way that the compiler might consider
@@ -16,14 +17,17 @@
#define sys_nerr sys_nerr__
#define sys_errlist sys_errlist__
#endif
+#endif
#include <stdio.h>
#include <errno.h>
+#ifndef HAVE_STRERROR
#ifdef HAVE_SYS_ERRLIST
#undef sys_nerr
#undef sys_errlist
#endif
+#endif
/* Routines imported from standard C runtime libraries. */
@@ -460,6 +464,7 @@ static int num_error_names = 0;
same name, it differs from other implementations in that it is dynamically
initialized rather than statically initialized. */
+#ifndef HAVE_STRERROR
#ifndef HAVE_SYS_ERRLIST
static int sys_nerr;
@@ -471,7 +476,7 @@ extern int sys_nerr;
extern char *sys_errlist[];
#endif
-
+#endif
/*
@@ -537,6 +542,7 @@ init_error_tables ()
}
}
+#ifndef HAVE_STRERROR
#ifndef HAVE_SYS_ERRLIST
/* Now attempt to allocate the sys_errlist table, zero it out, and then
@@ -557,6 +563,7 @@ init_error_tables ()
}
#endif
+#endif
}