diff --git a/cbits/posix/common.h b/cbits/posix/common.h index d7693ad8..6826143c 100644 --- a/cbits/posix/common.h +++ b/cbits/posix/common.h @@ -30,6 +30,7 @@ char *find_executable(char *workingDirectory, char *filename); #endif // defined in fork_exec.c +#if defined(HAVE_FORK) ProcHandle do_spawn_fork (char *const args[], char *workingDirectory, char **environment, @@ -39,6 +40,7 @@ do_spawn_fork (char *const args[], gid_t *childGroup, uid_t *childUser, int flags, char **failed_doing); +#endif // defined in posix_spawn.c ProcHandle diff --git a/cbits/posix/runProcess.c b/cbits/posix/runProcess.c index bc350d97..cb23f9e8 100644 --- a/cbits/posix/runProcess.c +++ b/cbits/posix/runProcess.c @@ -7,8 +7,6 @@ #include "runProcess.h" #include "common.h" -#if defined(HAVE_FORK) - #include #include #include @@ -70,6 +68,7 @@ do_spawn (char *const args[], return r; } +#if defined(HAVE_FORK) r = do_spawn_fork(args, workingDirectory, environment, stdInHdl, stdOutHdl, stdErrHdl, @@ -77,6 +76,11 @@ do_spawn (char *const args[], flags, failed_doing); return r; +#else + *failed_doing = "fork"; + return -1; +#endif + } enum pipe_direction { @@ -267,5 +271,3 @@ waitForProcess (ProcHandle handle, int *pret) return -1; } - -#endif // HAVE_FORK