summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/getopt.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/getopt.c b/lib/getopt.c
index 654f76159..c7fbc2d80 100644
--- a/lib/getopt.c
+++ b/lib/getopt.c
@@ -60,7 +60,7 @@
/* This needs to come after some library #include
to get __GNU_LIBRARY__ defined. */
-#ifdef __GNU_LIBRARY__
+#if defined (__GNU_LIBRARY__) || defined (__sgi)
/* Don't include stdlib.h for non-GNU C libraries because some of them
contain conflicting prototypes for getopt. */
#include <stdlib.h>
@@ -159,7 +159,7 @@ static enum
REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
} ordering;
-#ifdef __GNU_LIBRARY__
+#if defined (__GNU_LIBRARY__) || defined (__sgi)
/* We want to avoid inclusion of string.h with non-GNU libraries
because there are many ways it can cause trouble.
On some systems, it contains special magic macros that don't work
@@ -480,6 +480,10 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
for (nameend = nextchar; *nameend && *nameend != '='; nameend++)
/* Do nothing. */ ;
+#ifdef lint /* Suppress `used before initialized' warning. */
+ indfound = 0;
+#endif
+
/* Test all long options for either exact match
or abbreviated matches. */
for (p = longopts, option_index = 0; p->name; p++, option_index++)