• Heikki Linnakangas's avatar
    Use AS_IF rather than plain shell "if" in pthread-check. · 01051a98
    Heikki Linnakangas authored
    Autoconf generates additional code for the first AC_CHECK_HEADERS call in
    the script. If the first call is within an if-block, the additional code is
    put inside the if-block too, even though it is needed by subsequent
    AC_CHECK_HEADERS checks and should always be executed. When I moved the
    pthread-related checks earlier in the script, the pthread.h test inside
    the block became the very first AC_CHECK_HEADERS call in the script,
    triggering that problem.
    
    To fix, use AS_IF instead of plain shell if. AS_IF knows about that issue,
    and makes sure the additional code is always executed. To be completely
    safe from this issue (and others), we should always be using AS_IF instead
    of plain if, but that seems like excessive caution given that this is the
    first time we have trouble like this. Plain if-then is more readable than
    AS_IF.
    
    This should fix compilation with --disable-thread-safety, and hopefully the
    buildfarm failure on forgmouth, related to mingw standard headers, too.
    I backpatched the previous fixes to 9.5, but it's starting to look like
    these changes are too fiddly to backpatch, so commit this to master only,
    and revert all the pthread-related configure changes in 9.5.
    01051a98
configure 455 KB