diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-10-27 23:39:53 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-10-27 23:39:53 +0100 |
commit | aafe9ca1aa829f64d4bad1df3ee1d5997fb17d71 (patch) | |
tree | 78a9821d77bd96a523d46ecad8a3e13e20b5756f /lib/replace | |
parent | 807b862bc9a9f34feb14d54344c6818b8febefbc (diff) | |
download | samba-aafe9ca1aa829f64d4bad1df3ee1d5997fb17d71.tar.gz samba-aafe9ca1aa829f64d4bad1df3ee1d5997fb17d71.tar.bz2 samba-aafe9ca1aa829f64d4bad1df3ee1d5997fb17d71.zip |
Fix definition of environ on Mac OS X (bugzilla: #5412).
Diffstat (limited to 'lib/replace')
-rw-r--r-- | lib/replace/libreplace.m4 | 1 | ||||
-rw-r--r-- | lib/replace/replace.h | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/lib/replace/libreplace.m4 b/lib/replace/libreplace.m4 index 5e13d4a47e..6f1543863a 100644 --- a/lib/replace/libreplace.m4 +++ b/lib/replace/libreplace.m4 @@ -222,6 +222,7 @@ AC_CHECK_TYPE(comparison_fn_t, AC_HAVE_DECL(setenv, [#include <stdlib.h>]) AC_CHECK_FUNCS(setenv unsetenv) +AC_HAVE_DECL(environ, [#include <unistd.h>]) AC_CHECK_FUNCS(strnlen) AC_CHECK_FUNCS(strtoull __strtoull strtouq strtoll __strtoll strtoq) diff --git a/lib/replace/replace.h b/lib/replace/replace.h index af1208a8fc..a8164b642b 100644 --- a/lib/replace/replace.h +++ b/lib/replace/replace.h @@ -182,6 +182,15 @@ char *rep_strndup(const char *s, size_t n); size_t rep_strnlen(const char *s, size_t n); #endif +#if !HAVE_DECL_ENVIRON +#ifdef __APPLE__ +#include <crt_externs.h> +#define environ (*_NSGetEnviron()) +#else +extern char **environ; +#endif +#endif + #ifndef HAVE_SETENV #define setenv rep_setenv int rep_setenv(const char *name, const char *value, int overwrite); |