diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/configure.in b/configure.in index 322455f..f2fb61b 100644 --- a/configure.in +++ b/configure.in @@ -56,8 +56,9 @@ AC_MSG_RESULT($ac_cv_check_symbol_$1)])dnl AC_CHECK_LIB(posix4, clock_gettime) AC_CHECK_FUNCS(memmove strdup psignal mktemp pstat_getdynamic \ - clock_gettime dup2 getcwd sigsetmask getgroups setlinebuf \ - seteuid setegid setreuid setregid strerror strsignal pipe) + clock_gettime dup2 getcwd sigsetmask sigaction getgroups \ + setlinebuf seteuid setegid setreuid setregid \ + strerror strsignal pipe) AC_CHECK_SYMBOL(sys_siglist) AC_FUNC_ALLOCA AC_FUNC_VFORK @@ -129,11 +130,16 @@ dnl See if we can handle the job server feature, and if the user wants it. AC_ARG_ENABLE(job-server, [ --disable-job-server Disallow recursive make communication during -jN], - [make_cv_job_server="$enableval"], + [make_cv_job_server="$enableval" user_job_server="$enableval"], [make_cv_job_server="yes"]) -case "$ac_cv_func_pipe $make_cv_job_server" in - "yes yes") AC_DEFINE(MAKE_JOBSERVER) ;; +has_wait_nohang=yes +case "$ac_cv_func_waitpid/$ac_cv_func_wait3" in + no/no) has_wait_nohang=no ;; +esac + +case "$ac_cv_func_pipe/$ac_cv_func_sigaction/$has_wait_nohang/$make_cv_job_server" in + yes/yes/yes/yes) AC_DEFINE(MAKE_JOBSERVER) ;; esac dnl Allow building with dmalloc @@ -232,13 +238,23 @@ case "$with_customs" in fi ;; esac -case "$ac_cv_func_waitpid/$ac_cv_func_wait3" in - no/no) echo - echo "WARNING: Your system has neither waitpid() nor wait3()." - echo " Without one of these, signal handling is unreliable." - echo " You should be aware that running GNU make with -j" - echo " could result in erratic behavior." - echo ;; +case "$has_wait_nohang" in + no) echo + echo "WARNING: Your system has neither waitpid() nor wait3()." + echo " Without one of these, signal handling is unreliable." + echo " You should be aware that running GNU make with -j" + echo " could result in erratic behavior." + echo ;; +esac + +case "$make_cv_job_server/$user_job_server" in + no/yes) echo + echo "WARNING: Make job server requires a POSIX-ish system that" + echo " supports the pipe(), sigaction(), and either" + echo " waitpid() or wait3() functions. Your system doesn't" + echo " appear to provide one or more of those." + echo " Disabling job server support." + echo ;; esac dnl Local Variables: |