Browse Source

Trust a few system headers to stand on their own

At some point in the past some headers (net/if.h on some BSDs in 2009,
netinet/tcp.h on IRIX in 2000, sys/ucred.h in 2013 on then older openbsd),
only compiled if other heades were included first, complicating configure
tests. More recent tests indicate that that's not required anymore.

Reviewed-By: Thomas Munro <thomas.munro@gmail.com>
Discussion: https://postgr.es/m/20220807012914.ydz73yte6j3coulo@awork3.anarazel.de
master
Andres Freund 2 months ago
parent
commit
a2a36d56b9
  1. 56
      configure
  2. 24
      configure.ac

56
configure vendored

@ -13874,7 +13874,7 @@ $as_echo "#define HAVE_STDBOOL_H 1" >>confdefs.h
fi
for ac_header in atomic.h copyfile.h execinfo.h getopt.h ifaddrs.h langinfo.h mbarrier.h sys/epoll.h sys/event.h sys/ipc.h sys/personality.h sys/prctl.h sys/procctl.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/signalfd.h sys/sockio.h sys/uio.h sys/un.h termios.h ucred.h
for ac_header in atomic.h copyfile.h execinfo.h getopt.h ifaddrs.h langinfo.h mbarrier.h net/if.h netinet/tcp.h sys/epoll.h sys/event.h sys/ipc.h sys/personality.h sys/prctl.h sys/procctl.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/signalfd.h sys/sockio.h sys/ucred.h sys/uio.h sys/un.h termios.h ucred.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@ -13888,60 +13888,6 @@ fi
done
# On BSD, test for net/if.h will fail unless sys/socket.h
# is included first.
for ac_header in net/if.h
do :
ac_fn_c_check_header_compile "$LINENO" "net/if.h" "ac_cv_header_net_if_h" "$ac_includes_default
#include <sys/socket.h>
"
if test "x$ac_cv_header_net_if_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_NET_IF_H 1
_ACEOF
fi
done
# On OpenBSD, test for sys/ucred.h will fail unless sys/param.h
# is included first.
for ac_header in sys/ucred.h
do :
ac_fn_c_check_header_compile "$LINENO" "sys/ucred.h" "ac_cv_header_sys_ucred_h" "$ac_includes_default
#include <sys/param.h>
"
if test "x$ac_cv_header_sys_ucred_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SYS_UCRED_H 1
_ACEOF
fi
done
# At least on IRIX, test for netinet/tcp.h will fail unless
# netinet/in.h is included first.
for ac_header in netinet/tcp.h
do :
ac_fn_c_check_header_compile "$LINENO" "netinet/tcp.h" "ac_cv_header_netinet_tcp_h" "$ac_includes_default
#include <netinet/in.h>
"
if test "x$ac_cv_header_netinet_tcp_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_NETINET_TCP_H 1
_ACEOF
fi
done
if expr x"$pgac_cv_check_readline" : 'x-lreadline' >/dev/null ; then
for ac_header in readline/readline.h
do :

24
configure.ac

@ -1452,6 +1452,8 @@ AC_CHECK_HEADERS(m4_normalize([
ifaddrs.h
langinfo.h
mbarrier.h
net/if.h
netinet/tcp.h
sys/epoll.h
sys/event.h
sys/ipc.h
@ -1464,33 +1466,13 @@ AC_CHECK_HEADERS(m4_normalize([
sys/shm.h
sys/signalfd.h
sys/sockio.h
sys/ucred.h
sys/uio.h
sys/un.h
termios.h
ucred.h
]))
# On BSD, test for net/if.h will fail unless sys/socket.h
# is included first.
AC_CHECK_HEADERS(net/if.h, [], [],
[AC_INCLUDES_DEFAULT
#include <sys/socket.h>
])
# On OpenBSD, test for sys/ucred.h will fail unless sys/param.h
# is included first.
AC_CHECK_HEADERS(sys/ucred.h, [], [],
[AC_INCLUDES_DEFAULT
#include <sys/param.h>
])
# At least on IRIX, test for netinet/tcp.h will fail unless
# netinet/in.h is included first.
AC_CHECK_HEADERS(netinet/tcp.h, [], [],
[AC_INCLUDES_DEFAULT
#include <netinet/in.h>
])
if expr x"$pgac_cv_check_readline" : 'x-lreadline' >/dev/null ; then
AC_CHECK_HEADERS(readline/readline.h, [],
[AC_CHECK_HEADERS(readline.h, [],

Loading…
Cancel
Save