summaryrefslogtreecommitdiff
path: root/lib/putenv.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1993-09-08 18:23:12 +0000
committerJim Meyering <jim@meyering.net>1993-09-08 18:23:12 +0000
commitae0074289cd7d70cf8fb1d96f2625b2b9bb62b29 (patch)
treed5eab2eede21baf91b94efaf06e0df67cca78887 /lib/putenv.c
parent219bbb0758350d94610e967f31b5f9fdb0728354 (diff)
downloadcoreutils-ae0074289cd7d70cf8fb1d96f2625b2b9bb62b29.tar.xz
merge with 1.8.1 + partial --version and --help
Diffstat (limited to 'lib/putenv.c')
-rw-r--r--lib/putenv.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/lib/putenv.c b/lib/putenv.c
index d1fb726f3..c39d1b71e 100644
--- a/lib/putenv.c
+++ b/lib/putenv.c
@@ -18,13 +18,20 @@ Cambridge, MA 02139, USA. */
#include <sys/types.h>
#include <errno.h>
-#ifdef STDC_HEADERS
+
+/* This needs to come after some library #include
+ to get __GNU_LIBRARY__ defined. */
+#ifdef __GNU_LIBRARY__
+/* Don't include stdlib.h for non-GNU C libraries because some of them
+ contain conflicting prototypes for getopt. */
#include <stdlib.h>
-#else
+#endif /* GNU C library. */
+
+#ifndef STDC_HEADERS
extern int errno;
#endif
-#if defined(STDC_HEADERS) || defined(USG)
+#if defined(STDC_HEADERS) || defined(HAVE_STRING_H)
#include <string.h>
#ifndef index
#define index strchr
@@ -32,9 +39,9 @@ extern int errno;
#ifndef bcopy
#define bcopy(s, d, n) memcpy((d), (s), (n))
#endif
-#else /* not (STDC_HEADERS or USG) */
+#else
#include <strings.h>
-#endif /* STDC_HEADERS or USG */
+#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
@@ -44,10 +51,6 @@ extern int errno;
#define NULL 0
#endif
-#if !__STDC__
-#define const
-#endif
-
extern char **environ;
/* Put STRING, which is of the form "NAME=VALUE", in the environment. */