From 554a39889b6d80e109dc33d1e4b7cb12e7caee4b Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Sun, 18 Apr 2010 07:07:48 +0000 Subject: This is horrible. Split the difference, and declare 'environ' on all non-Darwin platforms to unbreak the darwin and linux builds. The BSD folks should feel free to change the #if, if this breaks them. llvm-svn: 101703 --- llvm/lib/System/Unix/Program.inc | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'llvm/lib') diff --git a/llvm/lib/System/Unix/Program.inc b/llvm/lib/System/Unix/Program.inc index 2f3616e73a1..7fdf3872dd9 100644 --- a/llvm/lib/System/Unix/Program.inc +++ b/llvm/lib/System/Unix/Program.inc @@ -32,6 +32,9 @@ #endif #ifdef HAVE_POSIX_SPAWN #include +#if !defined(__APPLE__) + extern char **environ; +#endif #endif namespace llvm { @@ -199,6 +202,10 @@ Program::Execute(const Path &path, const char **args, const char **envp, } } +#if !defined(__APPLE__) + if (!envp) envp = (const char**)environ; +#endif + pid_t PID; int Err = posix_spawn(&PID, path.c_str(), &FileActions, /*attrp*/0, (char**)args, (char**)envp); -- cgit v1.2.3