diff -urN dash-0.5.7/src/jobs.c dash-0.5.7-haiku/src/jobs.c --- dash-0.5.7/src/jobs.c 2011-03-15 16:45:32.008650752 +0900 +++ dash-0.5.7-haiku/src/jobs.c 2013-06-27 18:22:19.449052672 +0900 @@ -1136,7 +1136,11 @@ do { gotsigchld = 0; + #if defined(__HAIKU__) + err = waitpid(-1, status, flags); + #else err = wait3(status, flags, NULL); + #endif if (err || !block) break; diff -urN dash-0.5.7/src/system.h dash-0.5.7-haiku/src/system.h --- dash-0.5.7/src/system.h 2011-03-15 16:34:53.012582912 +0900 +++ dash-0.5.7-haiku/src/system.h 2013-06-27 18:18:17.767295488 +0900 @@ -57,6 +57,10 @@ char *strchrnul(const char *, int); #endif +#if defined(__HAIKU__) +char *strchrnul(const char *, int); +#endif + #ifndef HAVE_STRSIGNAL char *strsignal(int); #endif