summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common/compat.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/common/compat.c b/src/common/compat.c
index f25a8ac3b0..30bde3d1ca 100644
--- a/src/common/compat.c
+++ b/src/common/compat.c
@@ -16,7 +16,11 @@
* We also need it to make memmem get defined (where available)
*/
/* XXXX023 We should just use AC_USE_SYSTEM_EXTENSIONS in our autoconf,
- * and get this (and other important stuff!) automatically */
+ * and get this (and other important stuff!) automatically. Once we do that,
+ * make sure to also change the extern char **environ detection in
+ * configure.in, because whether that is declared or not depends on whether
+ * we have _GNU_SOURCE defined! Maybe that means that once we take this out,
+ * we can also take out the configure check. */
#define _GNU_SOURCE
#include "compat.h"
@@ -1663,9 +1667,11 @@ make_path_absolute(char *fname)
}
#ifndef HAVE__NSGETENVIRON
-/* FreeBSD needs this; it doesn't seem to hurt other platforms. */
+#ifndef HAVE_EXTERN_ENVIRON_DECLARED__
+/* Some platforms declare environ under some circumstances, others don't. */
extern char **environ;
#endif
+#endif
/** Return the current environment. This is a portable replacement for
* 'environ'. */