diff options
| author | Jyun-Yan You <jyyou@cs.nctu.edu.tw> | 2012-02-09 14:08:24 +0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-02-09 18:41:57 -0800 |
| commit | b778dac1976c3d4f33bf8ee8c7c3208ca8af2563 (patch) | |
| tree | b0333951d4303a493e50de070a9507cb1092ecee /src/rt/rust_run_program.cpp | |
| parent | 372cf4954c501b8a2068cfceaa826ead77f377fd (diff) | |
| download | rust-b778dac1976c3d4f33bf8ee8c7c3208ca8af2563.tar.gz rust-b778dac1976c3d4f33bf8ee8c7c3208ca8af2563.zip | |
fix build on freebsd
Diffstat (limited to 'src/rt/rust_run_program.cpp')
| -rw-r--r-- | src/rt/rust_run_program.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/rt/rust_run_program.cpp b/src/rt/rust_run_program.cpp index a1a9e8d6189..7ccecb2f99a 100644 --- a/src/rt/rust_run_program.cpp +++ b/src/rt/rust_run_program.cpp @@ -136,6 +136,10 @@ rust_process_wait(int proc) { #include <unistd.h> #include <termios.h> +#ifdef __FreeBSD__ +extern char **environ; +#endif + extern "C" CDECL int rust_run_program(const char* argv[], void* envp, @@ -164,6 +168,9 @@ rust_run_program(const char* argv[], *_NSGetEnviron() = (char **)envp; } execvp(argv[0], (char * const *)argv); +#elif __FreeBSD__ + if (envp) { environ = (char **)envp; } + execvp(argv[0], (char * const *)argv); #else if (!envp) { envp = environ; } execvpe(argv[0], (char * const *)argv, (char * const *)envp); |
