about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/libutil/archive.cc2
-rwxr-xr-xsrc/nix-build/nix-build.cc10
2 files changed, 6 insertions, 6 deletions
diff --git a/src/libutil/archive.cc b/src/libutil/archive.cc
index b9b26c5f5f98..fbba7f853f95 100644
--- a/src/libutil/archive.cc
+++ b/src/libutil/archive.cc
@@ -1,5 +1,3 @@
-#define _XOPEN_SOURCE 600
-
 #include "config.h"
 
 #include <cerrno>
diff --git a/src/nix-build/nix-build.cc b/src/nix-build/nix-build.cc
index b209464b8279..08c6793577a4 100755
--- a/src/nix-build/nix-build.cc
+++ b/src/nix-build/nix-build.cc
@@ -16,6 +16,8 @@
 
 using namespace nix;
 
+extern char * * environ;
+
 /* Recreate the effect of the perl shellwords function, breaking up a
  * string into arguments like a shell word, including escapes
  */
@@ -448,9 +450,10 @@ int main(int argc, char ** argv)
                     ? Strings{"bash", "--rcfile", rcfile}
                     : Strings{"bash", rcfile};
 
-                execvpe(getEnv("NIX_BUILD_SHELL", "bash").c_str(),
-                        stringsToCharPtrs(args).data(),
-                        stringsToCharPtrs(envStrs).data());
+                environ = stringsToCharPtrs(envStrs).data();
+
+                execvp(getEnv("NIX_BUILD_SHELL", "bash").c_str(),
+                    stringsToCharPtrs(args).data());
 
                 throw SysError("executing shell");
             }
@@ -507,4 +510,3 @@ int main(int argc, char ** argv)
         }
     });
 }
-