[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] Fix headers in test for whether environ is declared in stdlib/unistd



commit 6156403237fc1775a55000af5b792a5bb1b6e0f3
Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date:   Mon Apr 30 12:48:33 2012 -0400

    Fix headers in test for whether environ is declared in stdlib/unistd
    
    We'd had our configure.in test include unistd.h unconditionally,
    which would fail on Windows/mingw, even though environ _was_
    declared there.  Fix for 5704; bugfix on 0.2.3.13-alpha.
    
    Thanks to Erinn for finding this and rransom for figuring out the
    problem.
---
 changes/bug5704 |    4 ++++
 configure.in    |    3 +++
 2 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/changes/bug5704 b/changes/bug5704
new file mode 100644
index 0000000..40afefb
--- /dev/null
+++ b/changes/bug5704
@@ -0,0 +1,4 @@
+  o Minor bugfixes:
+    - Fix compilation on platforms without unistd.h, or where environ
+      is defined in stdlib.h. Fixes bug 5704; bugfix on
+      0.2.3.13-alpha.
\ No newline at end of file
diff --git a/configure.in b/configure.in
index e6f379c..d4ea6c6 100644
--- a/configure.in
+++ b/configure.in
@@ -1116,7 +1116,10 @@ AC_CACHE_CHECK([whether we have extern char **environ already declared],
 /* We define _GNU_SOURCE here because it is also defined in compat.c.
  * Without it environ doesn't get declared. */
 #define _GNU_SOURCE
+#ifdef HAVE_UNISTD_H
 #include <unistd.h>
+#endif
+#include <stdlib.h>
 int main(int c, char **v) { char **t = environ; }])],
   tor_cv_have_environ_declared=yes,
   tor_cv_have_environ_declared=no))



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits