From 1b0e79cb43342f40bc51663a26d99e1d56966147 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Tue, 4 Sep 2018 07:42:12 -0700 Subject: build: Simplify checks for functions with no special dependencies Signed-off-by: Simon McVittie --- configure.ac | 42 ++++++++++++++++++++++++++++++++++-------- 1 file changed, 34 insertions(+), 8 deletions(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 89337836..0e8045ff 100644 --- a/configure.ac +++ b/configure.ac @@ -389,6 +389,40 @@ AS_IF([test x$enable_code_coverage = xyes],[ [Defined if gcov is enabled to force a rebuild due to config.h changing]) ]) +#### Simple checks for things with no special dependencies + +# This construct is only suitable for functions that are in the system's +# standard C library and do not have unusual dependencies. Other +# functions need their own checks. Please keep sorted in LC_ALL=C order +AC_CHECK_FUNCS_ONCE([ +accept4 +clearenv +fpathconf +getgrouplist +getpeereid +getpeerucred +getresuid +getrlimit +inotify_init1 +issetugid +localeconv +nanosleep +pipe2 +poll +prctl +prlimit +raise +setenv +setlocale +setresuid +setrlimit +socketpair +strtoll +strtoull +unsetenv +usleep +]) + #### Integer sizes AC_CHECK_SIZEOF(char) @@ -622,8 +656,6 @@ AC_DEFINE_UNQUOTED([DBUS_USE_SYNC], [$have_sync], [Use the gcc __sync extension] AC_SEARCH_LIBS(socket,[socket network]) AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)]) -AC_CHECK_FUNCS([nanosleep usleep setenv clearenv unsetenv socketpair getgrouplist fpathconf setrlimit poll setlocale localeconv strtoll strtoull issetugid getresuid setresuid getrlimit prlimit]) - AC_CHECK_HEADERS([syslog.h]) if test "x$ac_cv_header_syslog_h" = "xyes"; then AC_CHECK_DECLS([LOG_PERROR], [], [], [[#include ]]) @@ -631,7 +663,6 @@ fi # For test-segfault.c AC_CHECK_HEADERS_ONCE([sys/prctl.h]) -AC_CHECK_FUNCS_ONCE([prctl raise]) AC_MSG_CHECKING(for dirfd) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ @@ -800,10 +831,6 @@ AC_CHECK_MEMBER([struct unpcbid.unp_pid], [], [[#include ]]) -AC_CHECK_FUNCS(getpeerucred getpeereid) - -AC_CHECK_FUNCS(pipe2 accept4) - PKG_CHECK_MODULES([EXPAT], [expat]) save_cflags="$CFLAGS" @@ -949,7 +976,6 @@ fi dnl check if inotify backend is enabled if test x$have_inotify = xyes; then AC_DEFINE(DBUS_BUS_ENABLE_INOTIFY,1,[Use inotify]) - AC_CHECK_FUNCS(inotify_init1) fi AM_CONDITIONAL(DBUS_BUS_ENABLE_INOTIFY, test x$have_inotify = xyes) -- cgit v1.2.1 From e8a2e1dcea71d75b674e1cf2f52cd471c71be7fd Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Tue, 4 Sep 2018 07:49:11 -0700 Subject: build: Simplify checks for straightforward header files Signed-off-by: Simon McVittie --- configure.ac | 48 ++++++++++++++++++++---------------------------- 1 file changed, 20 insertions(+), 28 deletions(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 0e8045ff..1c88b37c 100644 --- a/configure.ac +++ b/configure.ac @@ -423,6 +423,26 @@ unsetenv usleep ]) +# This construct is only suitable for headers that are self-contained +# and do not require extra headers to be included first. More complex +# headers need their own checks. Please keep sorted in LC_ALL=C order +AC_CHECK_HEADERS_ONCE([ +alloca.h +byteswap.h +crt_externs.h +dirent.h +errno.h +locale.h +signal.h +stdint.h +sys/prctl.h +sys/resource.h +sys/syslimits.h +sys/time.h +unistd.h +ws2tcpip.h +]) + #### Integer sizes AC_CHECK_SIZEOF(char) @@ -661,9 +681,6 @@ if test "x$ac_cv_header_syslog_h" = "xyes"; then AC_CHECK_DECLS([LOG_PERROR], [], [], [[#include ]]) fi -# For test-segfault.c -AC_CHECK_HEADERS_ONCE([sys/prctl.h]) - AC_MSG_CHECKING(for dirfd) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include @@ -699,32 +716,11 @@ closedir(dirp); fi fi -AC_CHECK_HEADERS(sys/resource.h) -AC_CHECK_HEADERS([sys/time.h]) - -AC_CHECK_HEADERS(dirent.h) - AC_CHECK_HEADERS([execinfo.h], [AC_SEARCH_LIBS([backtrace], [execinfo], [AC_DEFINE([HAVE_BACKTRACE], [1], [Define to 1 if you have backtrace().])])]) -AC_CHECK_HEADERS(errno.h) - -AC_CHECK_HEADERS(signal.h) - -AC_CHECK_HEADERS(locale.h) - -AC_CHECK_HEADERS(byteswap.h) - -AC_CHECK_HEADERS(unistd.h) - -AC_CHECK_HEADERS([stdint.h]) - -AC_CHECK_HEADERS(ws2tcpip.h) - -AC_CHECK_HEADERS(alloca.h) - # Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris # case $host_os in @@ -801,9 +797,6 @@ dnl check for writev header and writev function so we're dnl good to go if HAVE_WRITEV gets defined. AC_CHECK_HEADERS(sys/uio.h, [AC_CHECK_FUNCS(writev)]) -dnl needed on darwin for NAME_MAX -AC_CHECK_HEADERS(sys/syslimits.h) - dnl Make it easy to check if we have MSG_NOSIGNAL without actually having to include sys/socket.h AC_CHECK_DECLS([MSG_NOSIGNAL], [], [], [[ #include #include ]]) @@ -1721,7 +1714,6 @@ AC_DEFINE_UNQUOTED([DBUS_SESSION_BUS_CONNECT_ADDRESS], [Fallback address for session bus clients]) # darwin needs this to initialize the environment -AC_CHECK_HEADERS(crt_externs.h) AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) AH_VERBATIM(_DARWIN_ENVIRON, [ -- cgit v1.2.1