4 m4_define([dbus_major_version], [1])
5 m4_define([dbus_minor_version], [7])
6 m4_define([dbus_micro_version], [5])
7 m4_define([dbus_version],
8 [dbus_major_version.dbus_minor_version.dbus_micro_version])
9 AC_INIT([dbus],[dbus_version],[https://bugs.freedesktop.org/enter_bug.cgi?product=dbus],[dbus])
13 AC_CONFIG_HEADERS([config.h])
14 AC_CONFIG_MACRO_DIR([m4])
16 AM_INIT_AUTOMAKE([1.10 tar-ustar -Wno-portability])
18 GETTEXT_PACKAGE=dbus-1
19 AC_SUBST(GETTEXT_PACKAGE)
20 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[The name of the gettext domain])
22 # By default, rebuild autotools files on demand; only use ./missing if the
23 # user says --disable-maintainer-mode (some distributions like to do this)
24 AM_MAINTAINER_MODE([enable])
26 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
28 AC_DEFINE_UNQUOTED(DBUS_DAEMON_NAME,"dbus-daemon",[Name of executable])
30 # libtool versioning - this applies to libdbus
32 # See http://sources.redhat.com/autobook/autobook/autobook_91.html#SEC91 for details
35 ## increment if the interface has additions, changes, removals.
38 ## increment any time the source changes; set to
39 ## 0 if you increment CURRENT
42 ## increment if any interfaces have been added; set to 0
43 ## if any interfaces have been changed or removed. removal has
44 ## precedence over adding, so set to 0 if both happened.
51 DBUS_MAJOR_VERSION=dbus_major_version
52 DBUS_MINOR_VERSION=dbus_minor_version
53 DBUS_MICRO_VERSION=dbus_micro_version
54 DBUS_VERSION=dbus_major_version.dbus_minor_version.dbus_micro_version
56 AC_SUBST(DBUS_MAJOR_VERSION)
57 AC_SUBST(DBUS_MINOR_VERSION)
58 AC_SUBST(DBUS_MICRO_VERSION)
59 AC_SUBST(DBUS_VERSION)
64 AC_USE_SYSTEM_EXTENSIONS
71 COMPILER_OPTIMISATIONS
76 LT_LANG([Windows Resource])
78 # Set some internal variables depending on the platform for later use.
99 # Special defines for certain platforms
100 if test "$dbus_win" = yes; then
101 AC_DEFINE(DBUS_WIN,1,[Defined if we run on a W32 API based system])
102 BUILD_TIMESTAMP=`date --iso-8601=minutes`
103 AC_SUBST(BUILD_TIMESTAMP)
104 # Assume DBUS_VERSION is always three numbers
105 BUILD_FILEVERSION=`echo "$DBUS_VERSION" | sed -e 's/\./,/g'`,0
106 AC_SUBST(BUILD_FILEVERSION)
107 AC_CHECK_TOOL(WINDRES, windres, no)
108 if test "$WINDRES" = no; then
109 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
111 if test "$dbus_wince" = yes; then
112 AC_DEFINE(DBUS_WINCE,1,[Defined if we run on a W32 CE API based system])
113 AC_DEFINE(_WIN32_WCE, 0x0502, [Defined to get newer W32 CE APIs])
116 AC_DEFINE(DBUS_UNIX,1,[Defined if we run on a Unix-based system])
118 if test "$dbus_cygwin" = yes; then
119 AC_DEFINE(DBUS_CYGWIN,1,[Defined if we run on a cygwin API based system])
122 AM_CONDITIONAL(DBUS_WIN, test "$dbus_win" = yes)
123 AM_CONDITIONAL(DBUS_WINCE, test "$dbus_wince" = yes)
124 AM_CONDITIONAL(DBUS_UNIX, test "$dbus_unix" = yes)
125 AM_CONDITIONAL(DBUS_CYGWIN, test "$dbus_cygwin" = yes)
127 # this must come first: other options use this to set their defaults
128 AC_ARG_ENABLE([developer],
129 [AS_HELP_STRING([--enable-developer],
130 [set defaults to be appropriate for a D-Bus developer instead of a distribution/end-user])],
132 [enable_developer=no])
134 DBUS_STATIC_BUILD_CPPFLAGS=
135 if test "x$enable_shared" = xno; then
136 # On Windows, linking against the static library requires special effort
137 # to turn off DLL import/export processing. We normally link some things
138 # against the dynamic library, but if we're not building that, we'll
139 # have to link everything statically.
140 DBUS_STATIC_BUILD_CPPFLAGS=-DDBUS_STATIC_BUILD
142 AC_SUBST([DBUS_STATIC_BUILD_CPPFLAGS])
144 AC_ARG_ENABLE(ansi, AS_HELP_STRING([--enable-ansi],[enable -ansi -pedantic gcc flags]),enable_ansi=$enableval,enable_ansi=no)
145 AC_ARG_ENABLE(verbose-mode, AS_HELP_STRING([--enable-verbose-mode],[support verbose debug mode]),enable_verbose_mode=$enableval,enable_verbose_mode=$enable_developer)
146 AC_ARG_ENABLE(asserts, AS_HELP_STRING([--enable-asserts],[include assertion checks]),enable_asserts=$enableval,enable_asserts=$enable_developer)
147 AC_ARG_ENABLE(checks, AS_HELP_STRING([--enable-checks],[include sanity checks on public API]),enable_checks=$enableval,enable_checks=yes)
148 AC_ARG_ENABLE(xml-docs, AS_HELP_STRING([--enable-xml-docs],[build XML documentation (requires xmlto)]),enable_xml_docs=$enableval,enable_xml_docs=auto)
149 AC_ARG_ENABLE(doxygen-docs, AS_HELP_STRING([--enable-doxygen-docs],[build DOXYGEN documentation (requires Doxygen)]),enable_doxygen_docs=$enableval,enable_doxygen_docs=auto)
150 AC_ARG_ENABLE(abstract-sockets, AS_HELP_STRING([--enable-abstract-sockets],[use abstract socket namespace (linux only)]),enable_abstract_sockets=$enableval,enable_abstract_sockets=auto)
151 AC_ARG_ENABLE(selinux, AS_HELP_STRING([--enable-selinux],[build with SELinux support]),enable_selinux=$enableval,enable_selinux=auto)
152 AC_ARG_ENABLE(libaudit,AS_HELP_STRING([--enable-libaudit],[build audit daemon support for SELinux]),enable_libaudit=$enableval,enable_libaudit=auto)
153 AC_ARG_ENABLE(dnotify, AS_HELP_STRING([--enable-dnotify],[build with dnotify support (linux only)]),enable_dnotify=$enableval,enable_dnotify=auto)
154 AC_ARG_ENABLE(inotify, AS_HELP_STRING([--enable-inotify],[build with inotify support (linux only)]),enable_inotify=$enableval,enable_inotify=auto)
155 AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
156 AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
157 AC_ARG_ENABLE(userdb-cache, AS_HELP_STRING([--enable-userdb-cache],[build with userdb-cache support]),enable_userdb_cache=$enableval,enable_userdb_cache=yes)
158 AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
159 AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
161 AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
162 AC_ARG_WITH(session-socket-dir, AS_HELP_STRING([--with-session-socket-dir=[dirname]],[Where to put sockets for the per-login-session message bus]))
163 AC_ARG_WITH(test-socket-dir, AS_HELP_STRING([--with-test-socket-dir=[dirname]],[Where to put sockets for make check]))
164 AC_ARG_WITH(system-pid-file, AS_HELP_STRING([--with-system-pid-file=[pidfile]],[PID file for systemwide daemon]))
165 AC_ARG_WITH(system-socket, AS_HELP_STRING([--with-system-socket=[filename]],[UNIX domain socket for systemwide daemon]))
166 AC_ARG_WITH(console-auth-dir, AS_HELP_STRING([--with-console-auth-dir=[dirname]],[directory to check for console ownerhip]))
167 AC_ARG_WITH(console-owner-file, AS_HELP_STRING([--with-console-owner-file=[filename]],[file whose owner determines current console owner]))
168 AC_ARG_WITH(launchd-agent-dir, AS_HELP_STRING([--with-launchd-agent-dir=[dirname]],[directory to put the launchd agent (default: /Library/LaunchAgents)]))
169 AC_ARG_WITH(dbus_user, AS_HELP_STRING([--with-dbus-user=<user>],[User for running the DBUS daemon (messagebus)]))
170 AC_ARG_WITH(dbus_daemondir, AS_HELP_STRING([--with-dbus-daemondir=[dirname]],[Directory for installing the DBUS daemon]))
172 AC_ARG_ENABLE([embedded-tests],
173 AS_HELP_STRING([--enable-embedded-tests],
174 [enable unit test code in the library and binaries]),
175 [], [enable_embedded_tests=$enable_developer])
176 AC_ARG_ENABLE([modular-tests],
177 AS_HELP_STRING([--enable-modular-tests],
178 [enable modular regression tests (requires GLib)]),
179 [], [enable_modular_tests=auto])
180 # --enable-tests overrides both --enable-embedded-tests and
181 # --enable-modular-tests
182 AC_ARG_ENABLE([tests],
183 AS_HELP_STRING([--enable-tests],
184 [enable/disable all tests, overriding embedded-tests/modular-tests]),
186 if test "x$enableval" = xyes; then
187 AC_MSG_NOTICE([Full test coverage was requested with --enable-tests=yes])
188 AC_MSG_NOTICE([This has many dependencies (GLib, dbus-glib, Python)])
190 enable_embedded_tests=$enableval
191 enable_modular_tests=$enableval
195 # DBUS_ENABLE_EMBEDDED_TESTS controls unit tests built in to .c files
196 # and also some stuff in the test/ subdir. DBUS_BUILD_TESTS was an older
198 AM_CONDITIONAL([DBUS_BUILD_TESTS], [test "x$enable_embedded_tests" = xyes])
199 AM_CONDITIONAL([DBUS_ENABLE_EMBEDDED_TESTS],
200 [test "x$enable_embedded_tests" = xyes])
201 if test "x$enable_embedded_tests" = xyes; then
202 AC_DEFINE([DBUS_ENABLE_EMBEDDED_TESTS], [1],
203 [Define to build test code into the library and binaries])
204 AC_DEFINE([DBUS_BUILD_TESTS], [1],
205 [Define to build test code into the library and binaries])
208 # DBUS_ENABLE_MODULAR_TESTS controls tests that work based on public API.
209 # These use GTest, from GLib, because life's too short. They're enabled by
210 # default (unless you don't have GLib), because they don't bloat the library
213 AC_DEFINE([GLIB_VERSION_MIN_REQUIRED], [GLIB_VERSION_2_26], [Ignore post-2.26 deprecations])
214 AC_DEFINE([GLIB_VERSION_MAX_ALLOWED], [GLIB_VERSION_2_32], [Prevent post-2.32 APIs])
218 if test "x$enable_modular_tests" != xno; then
219 PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.24, gio-2.0 >= 2.24],
221 [if test "x$enable_modular_tests" = xyes; then
222 AC_MSG_NOTICE([Full test coverage (--enable-modular-tests=yes or --enable-tests=yes) requires GLib])
223 AC_MSG_ERROR([$GLIB_ERRORS])
224 else # assumed to be "auto"
227 # If dbus-gmain.[ch] returned to libdbus then we wouldn't need this
228 PKG_CHECK_MODULES([DBUS_GLIB], [dbus-glib-1],
230 [if test "x$enable_modular_tests" = xyes; then
231 AC_MSG_NOTICE([Full test coverage (--enable-modular-tests=yes or --enable-tests=yes) requires dbus-glib])
232 AC_MSG_ERROR([$DBUS_GLIB_ERRORS])
233 else # assumed to be "auto"
237 if test "x$enable_modular_tests" != xno; then
238 AC_DEFINE([DBUS_ENABLE_MODULAR_TESTS], [1],
239 [Define to build independent test binaries])
241 AM_CONDITIONAL([DBUS_ENABLE_MODULAR_TESTS],
242 [test "x$enable_modular_tests" != xno])
244 if test "x$with_glib" != xno; then
245 AC_DEFINE([DBUS_WITH_GLIB], [1],
246 [Define if GLib, GObject, GIO are available])
248 AM_CONDITIONAL([DBUS_WITH_GLIB], [test "x$with_glib" != xno])
250 AC_ARG_ENABLE([installed-tests],
251 AS_HELP_STRING([--enable-installed-tests],
252 [enable unit test code in the library and binaries]),
253 [], [enable_installed_tests=no])
254 AM_CONDITIONAL([DBUS_ENABLE_INSTALLED_TESTS],
255 [test "x$enable_installed_tests" = xyes])
257 if test "x$enable_tests" = xyes; then
258 # full test coverage is required, Python is a hard dependency
259 AC_MSG_NOTICE([Full test coverage (--enable-tests=yes) requires Python, dbus-python, pygobject])
260 AM_PATH_PYTHON([2.6])
261 AC_MSG_CHECKING([for Python modules for full test coverage])
262 if "$PYTHON" -c "import dbus, gobject, dbus.mainloop.glib"; then
266 AC_MSG_ERROR([cannot import dbus, gobject, dbus.mainloop.glib Python modules])
269 # --enable-tests not given: do not abort if Python is missing
270 AM_PATH_PYTHON([2.6], [], [:])
273 if test x$enable_verbose_mode = xyes; then
274 AC_DEFINE(DBUS_ENABLE_VERBOSE_MODE,1,[Support a verbose mode])
277 if test x$enable_asserts = xno; then
278 AC_DEFINE(DBUS_DISABLE_ASSERT,1,[Disable assertion checking])
279 DISABLE_UNUSED_WARNINGS="unused-label"
282 # -rdynamic is needed for glibc's backtrace_symbols to work.
283 # No clue how much overhead this adds, but it's useful
284 # to do this on any assertion failure,
285 # so for now it's enabled anytime asserts are (currently not
286 # in production builds).
288 # To get -rdynamic you pass -export-dynamic to libtool.
289 AC_DEFINE(DBUS_BUILT_R_DYNAMIC,1,[whether -export-dynamic was passed to libtool])
290 R_DYNAMIC_LDFLAG=-export-dynamic
292 AC_SUBST(R_DYNAMIC_LDFLAG)
294 if test x$enable_checks = xno; then
295 AC_DEFINE(DBUS_DISABLE_CHECKS,1,[Disable public API sanity checking])
296 AC_DEFINE(G_DISABLE_CHECKS,1,[Disable GLib public API sanity checking])
297 DISABLE_UNUSED_WARNINGS="unused-label"
300 if test x$enable_userdb_cache = xyes; then
301 AC_DEFINE(DBUS_ENABLE_USERDB_CACHE,1,[Build with caching of user data])
304 if test x$enable_compiler_coverage = xyes; then
305 ## so that config.h changes when you toggle gcov support
306 AC_DEFINE_UNQUOTED(DBUS_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing])
309 # glibc21.m4 serial 3
310 dnl Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc.
311 dnl This file is free software; the Free Software Foundation
312 dnl gives unlimited permission to copy and/or distribute it,
313 dnl with or without modifications, as long as this notice is preserved.
315 # Test for the GNU C Library, version 2.1 or newer.
318 AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
319 ac_cv_gnu_library_2_1,
320 [AC_EGREP_CPP([Lucky GNU user],
322 #include <features.h>
323 #ifdef __GNU_LIBRARY__
324 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
329 ac_cv_gnu_library_2_1=yes,
330 ac_cv_gnu_library_2_1=no)
336 AC_CHECK_SIZEOF(char)
337 AC_CHECK_SIZEOF(short)
338 AC_CHECK_SIZEOF(long)
340 AC_CHECK_SIZEOF(void *)
341 AC_CHECK_SIZEOF(long long)
342 AC_CHECK_SIZEOF(__int64)
344 AC_ARG_WITH([64-bit],
345 [AS_HELP_STRING([--without-64-bit],
346 [If you have to use this option, please report it as a bug])],
350 ### See what our 64 bit type is called
351 AC_MSG_CHECKING([64-bit integer type])
356 dbusint64_constant='(val)'
357 dbusuint64_constant='(val)'
358 dbusint64_printf_modifier='""'
362 dbusint64_constant='(val##L)'
363 dbusuint64_constant='(val##UL)'
364 dbusint64_printf_modifier='"l"'
366 $ac_cv_sizeof_long_long)
367 dbusint64='long long'
368 dbusint64_constant='(val##LL)'
369 dbusuint64_constant='(val##ULL)'
370 # Ideally we discover what the format is, but this is
371 # only used in verbose mode, so eh...
372 if test x"$ac_cv_gnu_library_2_1" = xyes; then
373 dbusint64_printf_modifier='"ll"'
376 $ac_cv_sizeof___int64)
378 dbusint64_constant='(val##i64)'
379 dbusuint64_constant='(val##ui64)'
381 if test x"$ac_cv_gnu_library_2_1" = xyes; then
382 dbusint64_printf_modifier='"ll"'
388 [test "x$with_64_bit" = xno],
390 DBUS_INT64_TYPE="no_int64_type_detected"
393 DBUS_UINT64_CONSTANT=
394 AC_MSG_RESULT([disabled via --without-64-bit])
397 [test -z "$dbusint64"],
398 [AC_MSG_RESULT([not found])
399 AC_MSG_ERROR([Could not find a 64-bit integer type.
401 Please report a bug here with details of your platform and compiler:
403 http://bugs.freedesktop.org/enter_bug.cgi?product=DBus&component=core
405 To compile D-Bus with all 64-bit integer types removed (not recommended), use
406 the option "--without-64-bit".
408 This option is likely to be removed in future, unless you report that your
413 DBUS_INT64_TYPE="$dbusint64"
415 DBUS_INT64_CONSTANT="$dbusint64_constant"
416 DBUS_UINT64_CONSTANT="$dbusuint64_constant"
417 if test x"$dbusint64_printf_modifier" != x; then
418 AC_DEFINE_UNQUOTED(DBUS_INT64_PRINTF_MODIFIER, [$dbusint64_printf_modifier], [Define to printf modifier for 64 bit integer type])
420 AC_MSG_RESULT($DBUS_INT64_TYPE)
423 AC_SUBST(DBUS_INT64_TYPE)
424 AC_SUBST(DBUS_INT64_CONSTANT)
425 AC_SUBST(DBUS_UINT64_CONSTANT)
426 AC_SUBST(DBUS_HAVE_INT64)
428 ### see what 32-bit int is called
429 AC_MSG_CHECKING([32-bit integer type])
443 if test -z "$dbusint32" ; then
444 DBUS_INT32_TYPE="no_int32_type_detected"
445 AC_MSG_ERROR([No 32-bit integer type found])
447 DBUS_INT32_TYPE="$dbusint32"
448 AC_MSG_RESULT($DBUS_INT32_TYPE)
451 AC_SUBST(DBUS_INT32_TYPE)
453 ### see what 16-bit int is called
454 AC_MSG_CHECKING([16-bit integer type])
465 if test -z "$dbusint16" ; then
466 DBUS_INT16_TYPE="no_int16_type_detected"
467 AC_MSG_ERROR([No 16-bit integer type found])
469 DBUS_INT16_TYPE="$dbusint16"
470 AC_MSG_RESULT($DBUS_INT16_TYPE)
473 AC_SUBST(DBUS_INT16_TYPE)
478 # check at compile-time, so that it is possible to build universal
479 # (with multiple architectures at once on the compile line)
480 AH_VERBATIM([WORDS_BIGENDIAN_DARWIN], [
481 /* Use the compiler-provided endianness defines to allow universal compiling. */
482 #if defined(__BIG_ENDIAN__)
483 #define WORDS_BIGENDIAN 1
492 dnl **********************************
493 dnl *** va_copy checks (from GLib) ***
494 dnl **********************************
495 dnl we currently check for all three va_copy possibilities, so we get
496 dnl all results in config.log for bug reports.
497 AC_CACHE_CHECK([for an implementation of va_copy()],dbus_cv_va_copy,[
498 AC_LINK_IFELSE([AC_LANG_SOURCE([#include <stdarg.h>
500 static void f (int i, ...) {
501 va_list args1, args2;
503 va_copy (args2, args1);
504 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
506 va_end (args1); va_end (args2);
512 [dbus_cv_va_copy=yes],
513 [dbus_cv_va_copy=no])
515 AC_CACHE_CHECK([for an implementation of __va_copy()],dbus_cv___va_copy,[
516 AC_LINK_IFELSE([AC_LANG_SOURCE([#include <stdarg.h>
518 static void f (int i, ...) {
519 va_list args1, args2;
521 __va_copy (args2, args1);
522 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
524 va_end (args1); va_end (args2);
530 [dbus_cv___va_copy=yes],
531 [dbus_cv___va_copy=no])
534 if test "x$dbus_cv_va_copy" = "xyes"; then
535 dbus_va_copy_func=va_copy
536 else if test "x$dbus_cv___va_copy" = "xyes"; then
537 dbus_va_copy_func=__va_copy
541 if test -n "$dbus_va_copy_func"; then
542 AC_DEFINE_UNQUOTED(DBUS_VA_COPY,$dbus_va_copy_func,[A 'va_copy' style function])
546 AC_CACHE_CHECK([whether va_lists can be copied by value],
548 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
554 static void f (int i, ...) {
555 va_list args1, args2;
558 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
560 va_end (args1); va_end (args2);
567 [dbus_cv_va_val_copy=yes],
568 [dbus_cv_va_val_copy=no],
569 [dbus_cv_va_val_copy=yes])
573 if test "x$dbus_cv_va_val_copy" = "xno"; then
574 AC_DEFINE(DBUS_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
580 AC_CACHE_CHECK([whether $CC knows __sync_sub_and_fetch()],
581 dbus_cv_sync_sub_and_fetch,
583 AC_LANG_PROGRAM([[]], [[int a = 4; int b = __sync_sub_and_fetch(&a, 4); exit(b); ]])],
584 [dbus_cv_sync_sub_and_fetch=yes],
585 [dbus_cv_sync_sub_and_fetch=no])
588 if test "x$dbus_cv_sync_sub_and_fetch" = "xyes" ; then
594 AC_DEFINE_UNQUOTED([DBUS_USE_SYNC], [$have_sync], [Use the gcc __sync extension])
596 #### Various functions
597 AC_SEARCH_LIBS(socket,[socket network])
598 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
600 AC_CHECK_FUNCS(vsnprintf vasprintf nanosleep usleep setenv clearenv unsetenv socketpair getgrouplist fpathconf setrlimit poll setlocale localeconv strtoll strtoull issetugid getresuid)
602 AC_CHECK_HEADERS([syslog.h])
603 if test "x$ac_cv_header_syslog_h" = "xyes"; then
604 AC_CHECK_DECLS([LOG_PERROR], [], [], [[#include <syslog.h>]])
607 #### Check for broken poll; taken from Glib's configure
609 AC_MSG_CHECKING([for broken poll])
610 AC_RUN_IFELSE([AC_LANG_SOURCE([[
614 #ifdef HAVE_SYS_POLL_H
615 #include <sys/poll.h>
618 struct pollfd fds[1];
620 fd = open("/dev/null", 1);
622 fds[0].events = POLLIN;
624 if (poll(fds, 1, 0) < 0 || (fds[0].revents & POLLNVAL) != 0) {
625 exit(1); /* Does not work for devices -- fail */
631 AC_DEFINE(BROKEN_POLL,1,[poll doesn't work on devices])],
632 [broken_poll="no (cross compiling)"])
633 AC_MSG_RESULT($broken_poll)
635 AC_MSG_CHECKING(for dirfd)
636 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
637 #include <sys/types.h>
645 [dbus_have_dirfd=yes],
646 [dbus_have_dirfd=no])
647 AC_MSG_RESULT($dbus_have_dirfd)
648 if test "$dbus_have_dirfd" = yes; then
649 AC_DEFINE(HAVE_DIRFD,1,[Have dirfd function])
651 AC_MSG_CHECKING(for DIR *dirp->dd_fd)
652 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
653 #include <sys/types.h>
662 [dbus_have_ddfd=yes],
664 AC_MSG_RESULT($dbus_have_ddfd)
665 if test "$dbus_have_ddfd" = yes; then
666 AC_DEFINE(HAVE_DDFD,1,[Have the ddfd member of DIR])
670 AC_CHECK_HEADERS(sys/resource.h)
672 AC_CHECK_HEADERS(dirent.h)
674 AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)])
676 AC_CHECK_HEADERS(errno.h)
678 AC_CHECK_HEADERS(signal.h)
680 AC_CHECK_HEADERS(locale.h)
682 AC_CHECK_HEADERS(byteswap.h)
684 AC_CHECK_HEADERS(unistd.h)
686 AC_CHECK_HEADERS(ws2tcpip.h)
688 AC_CHECK_HEADERS(wspiapi.h)
690 AC_CHECK_HEADERS(alloca.h)
692 # Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris
696 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS" ;;
699 # checking for a posix version of getpwnam_r
700 # if we are cross compiling and can not run the test
701 # assume getpwnam_r is the posix version
702 # it is up to the person cross compiling to change
703 # this behavior if desired
705 AC_CACHE_CHECK([for posix getpwnam_r],
706 ac_cv_func_posix_getpwnam_r,
707 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
714 struct passwd pwd, *pwptr = &pwd;
717 error = getpwnam_r ("", &pwd, buffer,
718 sizeof (buffer), &pwptr);
719 return (error < 0 && errno == ENOSYS)
722 [ac_cv_func_posix_getpwnam_r=yes],
723 [ac_cv_func_posix_getpwnam_r=no],
724 [ac_cv_func_posix_getpwnam_r=yes]
728 if test "$ac_cv_func_posix_getpwnam_r" = yes; then
729 AC_DEFINE(HAVE_POSIX_GETPWNAM_R,1,
730 [Have POSIX function getpwnam_r])
732 AC_CACHE_CHECK([for nonposix getpwnam_r],
733 ac_cv_func_nonposix_getpwnam_r,
734 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pwd.h>]], [[char buffer[10000];
736 getpwnam_r ("", &pwd, buffer,
737 sizeof (buffer));]])],
738 [ac_cv_func_nonposix_getpwnam_r=yes],
739 [ac_cv_func_nonposix_getpwnam_r=no])])
740 if test "$ac_cv_func_nonposix_getpwnam_r" = yes; then
741 AC_DEFINE(HAVE_NONPOSIX_GETPWNAM_R,1,
742 [Have non-POSIX function getpwnam_r])
746 dnl check for socklen_t
747 AC_MSG_CHECKING(whether socklen_t is defined)
748 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
749 #include <sys/types.h>
750 #include <sys/socket.h>
756 [dbus_have_socklen_t=yes],
757 [dbus_have_socklen_t=no])
758 AC_MSG_RESULT($dbus_have_socklen_t)
760 if test "x$dbus_have_socklen_t" = "xyes"; then
761 AC_DEFINE(HAVE_SOCKLEN_T,1,[Have socklen_t type])
764 dnl check for writev header and writev function so we're
765 dnl good to go if HAVE_WRITEV gets defined.
766 AC_CHECK_HEADERS(sys/uio.h, [AC_CHECK_FUNCS(writev)])
768 dnl needed on darwin for NAME_MAX
769 AC_CHECK_HEADERS(sys/syslimits.h)
771 dnl Make it easy to check if we have MSG_NOSIGNAL without actually having to include sys/socket.h
772 AC_CHECK_DECLS([MSG_NOSIGNAL], [], [], [[ #include <sys/types.h>
773 #include <sys/socket.h> ]])
775 dnl check for flavours of varargs macros (test from GLib)
776 AC_MSG_CHECKING(for ISO C99 varargs macros in C)
777 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
778 int a(int p1, int p2, int p3);
779 #define call_a(...) a(1,__VA_ARGS__)
782 [dbus_have_iso_c_varargs=yes],
783 [dbus_have_iso_c_varargs=no])
784 AC_MSG_RESULT($dbus_have_iso_c_varargs)
786 AC_MSG_CHECKING(for GNUC varargs macros)
787 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
788 int a(int p1, int p2, int p3);
789 #define call_a(params...) a(1,params)
792 [dbus_have_gnuc_varargs=yes],
793 [dbus_have_gnuc_varargs=no])
794 AC_MSG_RESULT($dbus_have_gnuc_varargs)
796 dnl Output varargs tests
797 if test x$dbus_have_iso_c_varargs = xyes; then
798 AC_DEFINE(HAVE_ISO_VARARGS,1,[Have ISO C99 varargs macros])
800 if test x$dbus_have_gnuc_varargs = xyes; then
801 AC_DEFINE(HAVE_GNUC_VARARGS,1,[Have GNU-style varargs macros])
804 dnl Check for various credentials.
805 AC_MSG_CHECKING(for struct cmsgcred)
806 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
807 #include <sys/types.h>
808 #include <sys/socket.h>
810 struct cmsgcred cred;
814 [dbus_have_struct_cmsgcred=yes],
815 [dbus_have_struct_cmsgcred=no])
816 AC_MSG_RESULT($dbus_have_struct_cmsgcred)
818 if test x$dbus_have_struct_cmsgcred = xyes; then
819 AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure])
822 AC_CHECK_FUNCS(getpeerucred getpeereid)
824 AC_CHECK_FUNCS(pipe2 accept4)
826 #### Abstract sockets
828 if test x$enable_abstract_sockets = xauto; then
831 AC_CACHE_CHECK([abstract socket namespace],
832 ac_cv_have_abstract_sockets,
833 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
835 #include <sys/types.h>
839 #include <sys/socket.h>
846 struct sockaddr_un addr;
848 listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
852 fprintf (stderr, "socket() failed: %s\n", strerror (errno));
856 memset (&addr, '\0', sizeof (addr));
857 addr.sun_family = AF_UNIX;
858 strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
859 /* SUN_LEN uses strlen() so need to calculate it before adding \0 at the
862 slen = SUN_LEN(&addr);
863 addr.sun_path[0] = '\0'; /* this is what makes it abstract */
865 if (bind (listen_fd, (struct sockaddr*) &addr, slen) < 0)
867 fprintf (stderr, "Abstract socket namespace bind() failed: %s\n",
874 [ac_cv_have_abstract_sockets=yes],
875 [ac_cv_have_abstract_sockets=no],
877 ac_cv_have_abstract_sockets=no
881 if test x$warn_on_xcompile = xyes ; then
882 AC_MSG_WARN([Cannot check for abstract sockets when cross-compiling, please use --enable-abstract-sockets])
887 if test x$enable_abstract_sockets = xyes; then
888 if test x$ac_cv_have_abstract_sockets = xno; then
889 AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.])
893 if test x$enable_abstract_sockets = xno; then
894 ac_cv_have_abstract_sockets=no;
897 if test x$ac_cv_have_abstract_sockets = xyes ; then
898 DBUS_PATH_OR_ABSTRACT=abstract
899 AC_DEFINE(HAVE_ABSTRACT_SOCKETS,1,[Have abstract socket namespace])
901 DBUS_PATH_OR_ABSTRACT=path
904 # this is used in addresses to prefer abstract, e.g.
905 # unix:path=/foo or unix:abstract=/foo
906 AC_SUBST(DBUS_PATH_OR_ABSTRACT)
910 #### Sort out XML library
912 AC_CHECK_LIB(expat, XML_ParserCreate_MM,
913 [ AC_CHECK_HEADERS(expat.h, [],
914 [AC_MSG_ERROR([Could not find expat.h, check config.log for failed attempts])]) ],
915 [ AC_MSG_ERROR([Explicitly requested expat but expat not found]) ])
919 AC_SUBST([XML_CFLAGS])
922 # Thread lib detection
923 AC_ARG_VAR([THREAD_LIBS])
925 LIBS="$LIBS $THREAD_LIBS"
927 is_missing_pthread_function="is required when compiling D-Bus on Unix platforms, but is not in your libc or libpthread. Please open a bug on https://bugs.freedesktop.org/enter_bug.cgi?product=dbus with details of your platform."
929 # Don't do these automatic checks if the user set THREAD_LIBS on the
930 # configure command-line. If they did, we assume they're right.
932 # We also don't do these checks on Windows, because you don't need magical
933 # linker flags to have threading support there.
934 AS_IF([test "x$dbus_unix" = xyes && test "x$THREAD_LIBS" = x],
936 # Mandatory pthread functions. In principle, some of these could be made
937 # optional if there are platforms that don't have them.
939 # Currently, we only look in -lpthread.
940 # In principle we might need to look in -lpthreads, -lthreads, ...
941 # as well - please file a bug if your platform needs this.
942 AC_SEARCH_LIBS([pthread_cond_timedwait],
944 [THREAD_LIBS="$LIBS"],
945 [AC_MSG_ERROR([pthread_cond_timedwait $is_missing_pthread_function])],
947 AC_SEARCH_LIBS([pthread_mutexattr_init],
949 [THREAD_LIBS="$LIBS"],
950 [AC_MSG_ERROR([pthread_mutexattr_init $is_missing_pthread_function])],
952 AC_SEARCH_LIBS([pthread_mutexattr_settype],
954 [THREAD_LIBS="$LIBS"],
955 [AC_MSG_ERROR([pthread_mutexattr_settype $is_missing_pthread_function])],
958 # Optional, for monotonic clocks. Because it's optional, this check
959 # is non-fatal if we don't find it.
960 AC_SEARCH_LIBS([pthread_condattr_setclock],
962 [THREAD_LIBS="$LIBS"])
964 AS_IF([test "x$ac_cv_search_pthread_condattr_setclock" != xno],
966 AC_SEARCH_LIBS([clock_getres], [rt], [THREAD_LIBS="$LIBS"])
967 AC_MSG_CHECKING([for CLOCK_MONOTONIC])
968 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
972 struct timespec monotonic_timer;
973 pthread_condattr_t attr;
974 pthread_condattr_init (&attr);
975 pthread_condattr_setclock (&attr, CLOCK_MONOTONIC);
976 clock_getres (CLOCK_MONOTONIC,&monotonic_timer);
978 [have_clock_monotonic=true],
979 [have_clock_monotonic=false])
980 AS_IF([test x$have_clock_monotonic = xtrue],
982 AC_MSG_RESULT([found])
983 AC_DEFINE(HAVE_MONOTONIC_CLOCK, 1, [Define if we have CLOCK_MONOTONIC])
985 [AC_MSG_RESULT([not found])])
986 ]) dnl have pthread_condattr_setclock
991 AC_SUBST([THREAD_LIBS])
994 if test x$enable_selinux = xno ; then
997 # See if we have SELinux library
998 AC_CHECK_LIB(selinux, is_selinux_enabled,
999 have_selinux=yes, have_selinux=no)
1001 # see if we have the SELinux header with the new D-Bus stuff in it
1002 if test x$have_selinux = xyes ; then
1003 AC_MSG_CHECKING([for DBUS Flask permissions in selinux/av_permissions.h])
1004 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <selinux/av_permissions.h>]],
1005 [[#ifdef DBUS__ACQUIRE_SVC return 0;
1007 #error DBUS__ACQUIRE_SVC not defined
1011 AC_MSG_RESULT($have_selinux)
1014 if test x$enable_selinux = xauto ; then
1015 if test x$have_selinux = xno ; then
1016 AC_MSG_WARN([Sufficiently new SELinux library not found])
1019 if test x$have_selinux = xno ; then
1020 AC_MSG_ERROR([SElinux explicitly required, and SELinux library not found])
1025 AM_CONDITIONAL(HAVE_SELINUX, test x$have_selinux = xyes)
1027 if test x$have_selinux = xyes ; then
1028 # the selinux code creates threads
1029 # which requires libpthread even on linux
1030 AC_CHECK_FUNC(pthread_create,,[AC_CHECK_LIB(pthread,pthread_create,
1031 [SELINUX_THREAD_LIBS="-lpthread"])])
1033 SELINUX_LIBS="-lselinux $SELINUX_THREAD_LIBS"
1034 AC_DEFINE(HAVE_SELINUX,1,[SELinux support])
1040 if test x$enable_inotify = xno ; then
1043 AC_CHECK_HEADERS(sys/inotify.h, have_inotify=yes, have_inotify=no)
1046 dnl check if inotify backend is enabled
1047 if test x$have_inotify = xyes; then
1048 AC_DEFINE(DBUS_BUS_ENABLE_INOTIFY,1,[Use inotify])
1049 AC_CHECK_FUNCS(inotify_init1)
1052 AM_CONDITIONAL(DBUS_BUS_ENABLE_INOTIFY, test x$have_inotify = xyes)
1055 if test x$enable_dnotify = xno ; then
1058 if test x$have_inotify = xno -a x$host_os = xlinux-gnu -o x$host_os = xlinux; then
1065 dnl check if dnotify backend is enabled
1066 if test x$have_dnotify = xyes; then
1067 AC_DEFINE(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX,1,[Use dnotify on Linux])
1070 AM_CONDITIONAL(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX, test x$have_dnotify = xyes)
1072 # For simplicity, we require the userland API for epoll_create1 at
1073 # compile-time (glibc 2.9), but we'll run on kernels that turn out
1074 # not to have it at runtime.
1075 AC_ARG_ENABLE([epoll],
1076 [AS_HELP_STRING([--enable-epoll],[use epoll(4) on Linux])],
1077 [enable_epoll=$enableval], [enable_epoll=auto])
1078 if test x$enable_epoll = xno; then
1081 AC_MSG_CHECKING([for Linux epoll(4)])
1082 AC_LINK_IFELSE([AC_LANG_PROGRAM(
1085 #error This is not Linux
1087 #include <sys/epoll.h>
1089 [epoll_create1 (EPOLL_CLOEXEC);])],
1090 [have_linux_epoll=yes],
1091 [have_linux_epoll=no])
1092 AC_MSG_RESULT([$have_linux_epoll])
1094 if test x$enable_epoll,$have_linux_epoll = xyes,no; then
1095 AC_MSG_ERROR([epoll support explicitly enabled but not available])
1097 if test x$have_linux_epoll = xyes; then
1098 AC_DEFINE([DBUS_HAVE_LINUX_EPOLL], 1, [Define to use epoll(4) on Linux])
1100 AM_CONDITIONAL([HAVE_LINUX_EPOLL], [test x$have_linux_epoll = xyes])
1103 if test x$enable_kqueue = xno ; then
1107 AC_CHECK_HEADER(sys/event.h, , have_kqueue=no)
1108 AC_CHECK_FUNC(kqueue, , have_kqueue=no)
1110 if test x$enable_kqueue = xyes -a x$have_kqueue = xno; then
1111 AC_MSG_ERROR(kqueue support explicitly enabled but not available)
1115 dnl check if kqueue backend is enabled
1116 if test x$have_kqueue = xyes; then
1117 AC_DEFINE(DBUS_BUS_ENABLE_KQUEUE,1,[Use kqueue])
1120 AM_CONDITIONAL(DBUS_BUS_ENABLE_KQUEUE, test x$have_kqueue = xyes)
1123 if test x$enable_launchd = xno ; then
1127 AC_CHECK_HEADER([launch.h], , have_launchd=no)
1128 AC_PATH_PROG([LAUNCHCTL], [launchctl])
1129 if test "x$LAUNCHCTL" = "x"; then
1133 if test x$enable_launchd = xyes && test x$have_launchd = xno ; then
1134 AC_MSG_ERROR([launchd support explicitly enabled but not available])
1138 dnl check if launchd is enabled
1139 if test x$have_launchd = xyes; then
1140 AC_DEFINE(DBUS_ENABLE_LAUNCHD,1,[Use launchd autolaunch])
1143 AM_CONDITIONAL(DBUS_ENABLE_LAUNCHD, test x$have_launchd = xyes)
1145 #### Directory to place launchd agent file
1146 if test "x$with_launchd_agent_dir" = "x"; then
1147 LAUNCHD_AGENT_DIR="/Library/LaunchAgents"
1149 LAUNCHD_AGENT_DIR="$with_launchd_agent_dir"
1152 AC_SUBST(LAUNCHD_AGENT_DIR)
1154 dnl console owner file
1155 if test x$enable_console_owner_file = xno ; then
1156 have_console_owner_file=no;
1160 have_console_owner_file=yes;
1161 AC_DEFINE(HAVE_CONSOLE_OWNER_FILE,1,[Have console owner file])
1164 have_console_owner_file=no;;
1168 AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
1170 dnl systemd detection
1171 if test x$enable_systemd = xno ; then
1174 PKG_CHECK_MODULES(SYSTEMD,
1175 [libsystemd-login >= 32, libsystemd-daemon >= 32],
1180 if test x$have_systemd = xyes; then
1181 AC_DEFINE(HAVE_SYSTEMD,1,[Have systemd])
1184 if test x$enable_systemd = xyes -a x$have_systemd != xyes ; then
1185 AC_MSG_ERROR([Explicitly requested systemd support, but systemd not found])
1188 # libaudit detection
1189 if test x$enable_libaudit = xno ; then
1192 # See if we have audit daemon & capabilities library
1193 AC_CHECK_LIB(audit, audit_log_user_avc_message,
1194 have_libaudit=yes, have_libaudit=no)
1195 if test x$have_libaudit = xyes ; then
1196 AC_CHECK_LIB(cap-ng, capng_clear,
1197 have_libaudit=yes, have_libaudit=no)
1201 AM_CONDITIONAL(HAVE_LIBAUDIT, test x$have_libaudit = xyes)
1203 if test x$have_libaudit = xyes ; then
1204 SELINUX_LIBS="$SELINUX_LIBS -laudit -lcap-ng"
1205 AC_DEFINE(HAVE_LIBAUDIT,1,[audit daemon SELinux support])
1208 AC_SUBST([SELINUX_LIBS])
1210 # Check for ADT API (Solaris Basic Security Mode auditing)
1211 AC_MSG_CHECKING(for ADT API)
1212 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1213 #include <bsm/adt.h>
1214 adt_user_context = ADT_USER;
1215 ]], [[]])], [ check_adt_audit=yes ], [ check_adt_audit=no ])
1217 if test ${check_adt_audit} = yes
1219 AC_DEFINE([HAVE_ADT], [], [Adt audit API])
1226 AC_SUBST([ADT_LIBS])
1228 # Check for SCM_RIGHTS
1229 AC_MSG_CHECKING([for SCM_RIGHTS])
1230 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1231 #include <sys/types.h>
1232 #include <sys/socket.h>
1234 static int x = SCM_RIGHTS;
1236 [ AC_MSG_RESULT([supported])
1237 AC_DEFINE([HAVE_UNIX_FD_PASSING], [1], [Supports sending UNIX file descriptors]) ],
1238 [ AC_MSG_RESULT([not supported]) ])
1241 if test x$dbus_win = xyes ; then
1242 if test x$dbus_wince = xyes ; then
1243 NETWORK_libs="-lws2"
1245 NETWORK_libs="-lws2_32 -liphlpapi"
1249 AC_SUBST([NETWORK_libs])
1251 AC_ARG_WITH([valgrind],
1252 [AS_HELP_STRING([--with-valgrind],
1253 [Add instrumentation to help valgrind to understand our allocator])],
1257 if test x$with_valgrind != xno; then
1258 PKG_CHECK_MODULES([VALGRIND], [valgrind >= 3.6])
1259 AC_DEFINE([WITH_VALGRIND], [1], [Define to add Valgrind instrumentation])
1262 # Determine maximum number of Unix fds which may be passed
1265 [DEFAULT_MESSAGE_UNIX_FDS=256],
1267 [DEFAULT_MESSAGE_UNIX_FDS=1024])
1268 AC_DEFINE_UNQUOTED([DBUS_DEFAULT_MESSAGE_UNIX_FDS],
1269 [$DEFAULT_MESSAGE_UNIX_FDS],
1270 [Default for dbus_connection_get_max_message_unix_fds()])
1271 AC_SUBST([DEFAULT_MESSAGE_UNIX_FDS])
1273 ### kdbus related libs
1274 AC_CHECK_LIB(crypto, MD5_Init,
1275 [ AC_CHECK_HEADERS(openssl/md5.h, [],
1276 [AC_MSG_ERROR([Could not find md5.h, check config.log for failed attempts])]) ],
1277 [ AC_MSG_ERROR([Explicitly requested crypto but crypto not found]) ])
1278 KDBUS_LIBS="-lcrypto"
1279 #AC_SUBST([KDBUS_LIBS])
1281 #### Set up final flags
1282 LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $KDBUS_LIBS"
1283 AC_SUBST([LIBDBUS_LIBS])
1290 AC_ARG_ENABLE([x11-autolaunch],
1291 AS_HELP_STRING([--enable-x11-autolaunch], [build with X11 auto-launch support]),
1292 [], [enable_x11_autolaunch=auto])
1294 if test "x$dbus_win" = xyes; then
1295 if test "x$enable_x11_autolaunch" = xyes; then
1296 AC_MSG_ERROR([X11 auto-launch is not supported on Windows])
1299 enable_x11_autolaunch=no
1304 if test "x$no_x" = xyes; then
1308 DBUS_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
1309 DBUS_X_CFLAGS="$X_CFLAGS"
1313 if test "x$enable_x11_autolaunch,$have_x11" = xyes,no; then
1314 AC_MSG_ERROR([X11 auto-launch requires X headers/libraries])
1316 # move from "auto" to "yes" or "no" if necessary
1317 if test "x$enable_x11_autolaunch" != xno; then
1318 enable_x11_autolaunch="$have_x11"
1322 if test "x$have_x11" = xyes ; then
1323 AC_DEFINE([DBUS_BUILD_X11], [1], [Define to build X11 functionality])
1326 if test "x$enable_x11_autolaunch" = xyes ; then
1327 AC_DEFINE([DBUS_ENABLE_X11_AUTOLAUNCH], [1], [Define to enable X11 auto-launch])
1330 AC_SUBST([DBUS_X_CFLAGS])
1331 AC_SUBST([DBUS_X_LIBS])
1333 #### gcc warning flags
1335 cc_supports_flag() {
1336 AC_MSG_CHECKING(whether $CC supports "$*")
1337 save_CFLAGS="$CFLAGS"
1339 AC_TRY_COMPILE([], [], [rc=yes], [rc=no])
1340 CFLAGS="$save_CFLAGS"
1341 AC_MSG_RESULT([$rc])
1345 TP_COMPILER_WARNINGS([WARNING_CFLAGS],
1346 dnl Use -Werror by default if:
1347 dnl - we're not on Windows (too many warnings), and
1348 dnl - we're in developer mode (a D-Bus developer, not a distro or end-user)
1349 dnl Override with --enable-Werror or --disable-Werror
1350 [test x$dbus_win != xyes -a x$dbus_cygwin != xyes -a x$enable_developer = xyes],
1352 dnl Enable these warnings if possible:
1356 missing-declarations \
1357 missing-prototypes \
1363 declaration-after-statement \
1366 dnl Disable these warnings if possible, make them non-fatal if possible,
1367 dnl and don't enable -Werror unless we succeeded.
1370 dnl - $DISABLE_UNUSED_WARNINGS disables unused-label warnings if not
1371 dnl checking or not asserting
1372 dnl - missing field initializers being 0 is a C feature, not a bug
1373 dnl - unused-parameter is to make writing callbacks less annoying
1375 dnl To be fixed one day:
1376 dnl - sign-compare and pointer-sign are workarounds for fd.o #17433
1377 dnl - type-limits is probably a bug too, but having the rest of -Wextra
1378 dnl is better than nothing
1379 [$DISABLE_UNUSED_WARNINGS \
1380 missing-field-initializers \
1387 if test "x$GCC" = "xyes"; then
1388 # We're treating -fno-common like a warning: it makes the linker more
1389 # strict, because on some systems the linker is *always* this strict
1390 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS], [-fno-common])
1392 # http://bugs.freedesktop.org/show_bug.cgi?id=10599
1393 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS], [-fno-strict-aliasing])
1395 if test "x$enable_ansi" = "xyes"; then
1396 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS],
1397 [-ansi -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -pedantic])
1401 dnl In principle we should put WARNING_CFLAGS in each Makefile.am like
1402 dnl telepathy-glib does, since CFLAGS is meant to be reserved for the user...
1403 dnl but prepending to CFLAGS (so the user can override it with later CFLAGS)
1404 dnl is the next best thing
1405 CFLAGS="$WARNING_CFLAGS $CFLAGS"
1409 # Solaris' C library apparently needs these runes to be threadsafe...
1410 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT"
1411 # ... this opt-in to get sockaddr_in6 and sockaddr_storage...
1412 CFLAGS="$CFLAGS -D__EXTENSIONS__"
1413 # ... and this opt-in to get file descriptor passing support
1414 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=500"
1418 ### Doxygen Documentation
1420 AC_PATH_PROG(DOXYGEN, doxygen, no)
1422 AC_MSG_CHECKING([whether to build Doxygen documentation])
1424 if test x$DOXYGEN = xno ; then
1430 if test x$enable_doxygen_docs = xauto ; then
1431 if test x$have_doxygen = xno ; then
1432 enable_doxygen_docs=no
1434 enable_doxygen_docs=yes
1438 if test x$enable_doxygen_docs = xyes; then
1439 if test x$have_doxygen = xno; then
1440 AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found])
1444 AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test x$enable_doxygen_docs = xyes)
1445 AC_MSG_RESULT($enable_doxygen_docs)
1447 AC_CHECK_PROGS([XSLTPROC], [xsltproc])
1448 AM_CONDITIONAL([DBUS_HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
1450 ### XML Documentation
1452 AC_PATH_PROG(XMLTO, xmlto, no)
1454 AC_MSG_CHECKING([whether to build XML documentation])
1456 if test x$XMLTO = xno ; then
1462 if test x$enable_xml_docs = xauto ; then
1463 if test x$have_xmlto = xno ; then
1470 if test x$enable_xml_docs = xyes; then
1471 if test x$have_xmlto = xno; then
1472 AC_MSG_ERROR([Building XML docs explicitly required, but xmlto not found])
1476 AM_CONDITIONAL(DBUS_XML_DOCS_ENABLED, test x$enable_xml_docs = xyes)
1477 AC_MSG_RESULT($enable_xml_docs)
1479 AM_CONDITIONAL(DBUS_CAN_UPLOAD_DOCS,
1480 [test x$enable_doxygen_docs = xyes && test x$enable_xml_docs = xyes])
1482 #### Have to go $localstatedir->$prefix/var->/usr/local/var
1484 #### find the actual value for $prefix that we'll end up with
1485 ## (I know this is broken and should be done in the Makefile, but
1486 ## that's a major pain and almost nobody actually seems to care)
1487 AS_AC_EXPAND(EXPANDED_PREFIX, "$prefix")
1488 AS_AC_EXPAND(EXPANDED_LOCALSTATEDIR, "$localstatedir")
1489 AS_AC_EXPAND(EXPANDED_SYSCONFDIR, "$sysconfdir")
1490 AS_AC_EXPAND(EXPANDED_BINDIR, "$bindir")
1491 AS_AC_EXPAND(EXPANDED_LIBDIR, "$libdir")
1492 AS_AC_EXPAND(EXPANDED_LIBEXECDIR, "$libexecdir")
1493 AS_AC_EXPAND(EXPANDED_DATADIR, "$datadir")
1495 #### Check our operating system
1496 operating_system=unknown
1497 if test -f /etc/redhat-release || test -f $EXPANDED_SYSCONFDIR/redhat-release ; then
1498 operating_system=redhat
1501 if test -f /etc/slackware-version || test -f $EXPANDED_SYSCONFDIR/slackware-version ; then
1502 operating_system=slackware
1505 if test -f /usr/bin/cygwin1.dll || test -f $EXPANDED_BINDIR/cygwin1.dll ; then
1506 operating_system=cygwin
1509 #### Sort out init scripts
1511 if test x$with_init_scripts = x; then
1512 case x$operating_system in
1513 xredhat) with_init_scripts=redhat ;;
1514 xslackware) with_init_scripts=slackware ;;
1515 xcygwin) with_init_scripts=cygwin ;;
1516 *) with_init_scripts=none ;;
1520 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_RED_HAT, test x$with_init_scripts = xredhat)
1521 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_SLACKWARE, test x$with_init_scripts = xslackware)
1522 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_CYGWIN, test x$with_init_scripts = xcygwin)
1524 ##### systemd unit files
1525 AC_ARG_WITH([systemdsystemunitdir],
1526 AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
1529 PKG_CHECK_EXISTS([systemd],
1530 [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)],
1531 [with_systemdsystemunitdir=no])
1533 if test "x$with_systemdsystemunitdir" != xno; then
1534 AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
1536 AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
1538 ##### Set up location for system bus socket
1539 if ! test -z "$with_system_socket"; then
1540 DBUS_SYSTEM_SOCKET=$with_system_socket
1542 DBUS_SYSTEM_SOCKET=${EXPANDED_LOCALSTATEDIR}/run/dbus/system_bus_socket
1545 AC_SUBST(DBUS_SYSTEM_SOCKET)
1546 AC_DEFINE_UNQUOTED(DBUS_SYSTEM_SOCKET,"$DBUS_SYSTEM_SOCKET",[The name of the socket the system bus listens on by default])
1548 ## System bus only listens on local domain sockets, and never
1549 ## on an abstract socket (so only root can create the socket).
1551 ## This won't work on Windows. It's not meant to - the system bus is
1552 ## meaningless on Windows anyway.
1554 ## This has to be suitable for hard-coding in client libraries as well as
1555 ## in the dbus-daemon's configuration, so it has to be valid to listen on
1556 ## and also to connect to. If this ever changes, it'll need to be split into
1557 ## two variables, one for the listening address and one for the connecting
1559 DBUS_SYSTEM_BUS_DEFAULT_ADDRESS="unix:path=$DBUS_SYSTEM_SOCKET"
1560 AC_SUBST(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS)
1561 AC_DEFINE_UNQUOTED(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS, "$DBUS_SYSTEM_BUS_DEFAULT_ADDRESS",[The default D-Bus address of the system bus])
1563 #### Set up the pid file
1564 if ! test -z "$with_system_pid_file"; then
1565 DBUS_SYSTEM_PID_FILE=$with_system_pid_file
1566 elif test x$with_init_scripts = xredhat ; then
1567 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/messagebus.pid
1569 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/dbus/pid
1572 AC_SUBST(DBUS_SYSTEM_PID_FILE)
1574 #### Directory to check for console ownership
1575 if ! test -z "$with_console_auth_dir"; then
1576 DBUS_CONSOLE_AUTH_DIR=$with_console_auth_dir
1578 DBUS_CONSOLE_AUTH_DIR=/var/run/console/
1581 AC_SUBST(DBUS_CONSOLE_AUTH_DIR)
1582 AC_DEFINE_UNQUOTED(DBUS_CONSOLE_AUTH_DIR, "$DBUS_CONSOLE_AUTH_DIR", [Directory to check for console ownerhip])
1584 #### File to check for console ownership
1585 if test x$have_console_owner_file = xyes; then
1586 if ! test -z "$with_console_owner_file"; then
1587 DBUS_CONSOLE_OWNER_FILE=$with_console_owner_file
1589 DBUS_CONSOLE_OWNER_FILE=/dev/console
1592 DBUS_CONSOLE_OWNER_FILE=
1595 AC_SUBST(DBUS_CONSOLE_OWNER_FILE)
1596 AC_DEFINE_UNQUOTED(DBUS_CONSOLE_OWNER_FILE, "$DBUS_CONSOLE_OWNER_FILE", [File to check for console ownerhip])
1598 #### User to start the system bus as
1599 if test -z "$with_dbus_user" ; then
1600 DBUS_USER=messagebus
1602 DBUS_USER=$with_dbus_user
1605 AC_DEFINE_UNQUOTED(DBUS_USER,"$DBUS_USER", [User for running the system BUS daemon])
1607 #### Prefix to install into
1608 DBUS_PREFIX=$EXPANDED_PREFIX
1609 AC_SUBST(DBUS_PREFIX)
1610 AC_DEFINE_UNQUOTED(DBUS_PREFIX,"$DBUS_PREFIX", [Prefix for installing DBUS])
1612 #### Direcotry to install data files into
1613 DBUS_DATADIR=$EXPANDED_DATADIR
1614 AC_SUBST(DBUS_DATADIR)
1615 AC_DEFINE_UNQUOTED(DBUS_DATADIR,"$DBUS_DATADIR", [Directory for installing DBUS data files])
1617 #### Directory to install dbus-daemon
1618 if test -z "$with_dbus_daemondir" ; then
1619 DBUS_DAEMONDIR=$EXPANDED_BINDIR
1621 DBUS_DAEMONDIR=$with_dbus_daemondir
1623 AC_SUBST(DBUS_DAEMONDIR)
1624 AC_DEFINE_UNQUOTED(DBUS_DAEMONDIR,"$DBUS_DAEMONDIR", [Directory for installing the DBUS daemon])
1626 #### Directory to install the other binaries
1627 DBUS_BINDIR="$EXPANDED_BINDIR"
1628 AC_SUBST(DBUS_BINDIR)
1629 AC_DEFINE_UNQUOTED(DBUS_BINDIR,"$DBUS_BINDIR", [Directory for installing the binaries])
1631 #### Directory to install the libexec binaries
1632 DBUS_LIBEXECDIR="$EXPANDED_LIBEXECDIR"
1633 AC_SUBST(DBUS_LIBEXECDIR)
1634 AC_DEFINE_UNQUOTED(DBUS_LIBEXECDIR,"$DBUS_LIBEXECDIR", [Directory for installing the libexec binaries])
1636 #### Tell tests where to find certain stuff in builddir
1639 # Useful in a cross-compilation environment, where the tests are run on the host system.
1640 AC_ARG_WITH(dbus-test-dir, AS_HELP_STRING([--with-dbus-test-dir=[dirname]],[path where the tests tools are available]),
1643 DBUS_TEST_EXEC="$DBUS_PWD/test"
1644 DBUS_TEST_DATA="$DBUS_PWD/test/data"
1646 AC_SUBST([DBUS_TEST_DATA])
1647 AC_SUBST([DBUS_TEST_EXEC])
1649 AC_DEFINE_UNQUOTED([DBUS_TEST_EXEC], ["$DBUS_TEST_EXEC"],
1650 [Full path to the daemon in the builddir])
1651 AC_DEFINE_UNQUOTED([DBUS_EXEEXT], ["$EXEEXT"],
1652 [Extension for executables, typically empty or .exe])
1654 AC_DEFINE_UNQUOTED(TEST_BUS_BINARY, ["$DBUS_PWD/bus/dbus-daemon$EXEEXT"],
1655 [Full path to the daemon in the builddir])
1656 AC_SUBST(TEST_BUS_BINARY)
1658 ## Export the non-setuid external helper
1659 TEST_LAUNCH_HELPER_BINARY="$DBUS_PWD/bus/dbus-daemon-launch-helper-test$EXEEXT"
1660 AC_SUBST(TEST_LAUNCH_HELPER_BINARY)
1661 AC_DEFINE_UNQUOTED(DBUS_TEST_LAUNCH_HELPER_BINARY, "$TEST_LAUNCH_HELPER_BINARY",
1662 [Full path to the launch helper test program in the builddir])
1664 #### Find socket directories
1665 if ! test -z "$TMPDIR" ; then
1666 DEFAULT_SOCKET_DIR=$TMPDIR
1667 elif ! test -z "$TEMP" ; then
1668 DEFAULT_SOCKET_DIR=$TEMP
1669 elif ! test -z "$TMP" ; then
1670 DEFAULT_SOCKET_DIR=$TMP
1672 DEFAULT_SOCKET_DIR=/tmp
1675 DEFAULT_SOCKET_DIR=`echo $DEFAULT_SOCKET_DIR | sed 's/+/%2B/g'`
1677 if ! test -z "$with_test_socket_dir" ; then
1678 TEST_SOCKET_DIR="$with_test_socket_dir"
1680 TEST_SOCKET_DIR=$DEFAULT_SOCKET_DIR
1682 AC_SUBST(TEST_SOCKET_DIR)
1683 AC_DEFINE_UNQUOTED(DBUS_TEST_SOCKET_DIR, "$TEST_SOCKET_DIR", [Where to put test sockets])
1685 if test "x$dbus_unix" = xyes; then
1686 TEST_LISTEN="unix:tmpdir=$TEST_SOCKET_DIR"
1688 TEST_LISTEN="tcp:host=localhost"
1690 AC_SUBST([TEST_LISTEN])
1691 AC_DEFINE_UNQUOTED([TEST_LISTEN], ["$TEST_LISTEN"],
1692 [Listening address for regression tests])
1694 if ! test -z "$with_session_socket_dir" ; then
1695 DBUS_SESSION_SOCKET_DIR="$with_session_socket_dir"
1697 DBUS_SESSION_SOCKET_DIR=$DEFAULT_SOCKET_DIR
1699 AC_DEFINE_UNQUOTED(DBUS_SESSION_SOCKET_DIR, "$DBUS_SESSION_SOCKET_DIR", [Where per-session bus puts its sockets])
1700 AC_SUBST(DBUS_SESSION_SOCKET_DIR)
1702 # This must be a listening address. It doesn't necessarily need to be an
1703 # address you can connect to - it can be something vague like
1706 # The default varies by platform.
1707 AC_ARG_WITH([dbus_session_bus_listen_address],
1708 AS_HELP_STRING([--with-dbus-session-bus-listen-address=[ADDRESS]],
1709 [default address for a session bus to listen on (see configure.ac)]),
1710 [with_dbus_session_bus_listen_address=$withval],
1711 [with_dbus_session_bus_listen_address=])
1713 if test "x$with_dbus_session_bus_listen_address" != "x"; then
1714 # the user specified something, trust them
1715 DBUS_SESSION_BUS_LISTEN_ADDRESS="$with_dbus_session_bus_listen_address"
1716 elif test x$dbus_win = xyes; then
1717 # On Windows, you can (and should) listen on autolaunch addresses,
1718 # because autolaunching is different.
1719 # See https://bugs.freedesktop.org/show_bug.cgi?id=38201
1720 DBUS_SESSION_BUS_LISTEN_ADDRESS="autolaunch:"
1721 elif test x$have_launchd = xyes; then
1722 # Mac OS X default is to use launchd
1723 DBUS_SESSION_BUS_LISTEN_ADDRESS="launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET"
1725 # The default on all other Unix platforms (notably Linux)
1726 # is to create a randomly named socket in /tmp or similar
1727 DBUS_SESSION_BUS_LISTEN_ADDRESS="unix:tmpdir=$DBUS_SESSION_SOCKET_DIR"
1729 AC_SUBST([DBUS_SESSION_BUS_LISTEN_ADDRESS])
1731 # This must be an address you can connect to. It doesn't necessarily
1732 # need to be an address you can listen on - it can be "autolaunch:",
1735 # The default varies by platform.
1736 AC_ARG_WITH([dbus_session_bus_connect_address],
1737 AS_HELP_STRING([--with-dbus-session-bus-connect-address=[ADDRESS]],
1738 [fallback address for a session bus client to connect to (see configure.ac)]),
1739 [with_dbus_session_bus_connect_address=$withval],
1740 [with_dbus_session_bus_connect_address=])
1742 if test "x$with_dbus_session_bus_connect_address" != "x"; then
1743 # the user specified something, trust them
1744 DBUS_SESSION_BUS_CONNECT_ADDRESS="$with_dbus_session_bus_connect_address"
1745 elif test x$dbus_win = xyes; then
1746 # Windows autolaunching is a bit different; leaving it in its own
1747 # branch of the conditional because the default might conceivably
1748 # change (see #38201)
1749 DBUS_SESSION_BUS_CONNECT_ADDRESS="autolaunch:"
1751 # The default on all other Unix platforms (notably Linux)
1752 # is to use auto-launching - this works a bit differently on Mac OS X
1753 # but comes out basically the same in the end
1754 DBUS_SESSION_BUS_CONNECT_ADDRESS="autolaunch:"
1756 AC_SUBST([DBUS_SESSION_BUS_CONNECT_ADDRESS])
1757 AC_DEFINE_UNQUOTED([DBUS_SESSION_BUS_CONNECT_ADDRESS],
1758 ["$DBUS_SESSION_BUS_CONNECT_ADDRESS"],
1759 [Fallback address for session bus clients])
1761 # darwin needs this to initialize the environment
1762 AC_CHECK_HEADERS(crt_externs.h)
1763 AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])])
1764 AH_VERBATIM(_DARWIN_ENVIRON,
1766 #if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
1767 # include <sys/time.h>
1768 # include <crt_externs.h>
1769 # define environ (*_NSGetEnviron())
1773 AC_ARG_ENABLE([stats],
1774 [AS_HELP_STRING([--enable-stats],
1775 [enable bus daemon usage statistics])],
1776 [], [enable_stats=no])
1777 if test "x$enable_stats" = xyes; then
1778 AC_DEFINE([DBUS_ENABLE_STATS], [1],
1779 [Define to enable bus daemon usage statistics])
1785 dbus/dbus-arch-deps.h
1789 bus/messagebus-config
1790 bus/org.freedesktop.dbus-session.plist
1799 test/name-test/Makefile
1801 doc/dbus-cleanup-sockets.1.xml
1802 doc/dbus-daemon.1.xml
1803 doc/dbus-launch.1.xml
1804 doc/dbus-monitor.1.xml
1805 doc/dbus-run-session.1.xml
1807 doc/dbus-uuidgen.1.xml
1809 dbus-1-uninstalled.pc
1810 test/data/valid-config-files/debug-allow-all.conf
1811 test/data/valid-config-files/debug-allow-all-sha1.conf
1812 test/data/valid-config-files-system/debug-allow-all-pass.conf
1813 test/data/valid-config-files-system/debug-allow-all-fail.conf
1814 test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service
1815 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service
1816 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteForkingEchoService.service
1817 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service
1818 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
1819 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
1820 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteEchoService.service
1821 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service
1822 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
1823 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
1824 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service
1825 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service
1826 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service
1830 dnl ==========================================================================
1835 prefix: ${EXPANDED_PREFIX}
1836 exec_prefix: ${exec_prefix}
1837 libdir: ${EXPANDED_LIBDIR}
1838 libexecdir: ${EXPANDED_LIBEXECDIR}
1839 bindir: ${EXPANDED_BINDIR}
1840 sysconfdir: ${EXPANDED_SYSCONFDIR}
1841 localstatedir: ${EXPANDED_LOCALSTATEDIR}
1842 datadir: ${EXPANDED_DATADIR}
1843 source code location: ${srcdir}
1846 cppflags: ${CPPFLAGS}
1847 cxxflags: ${CXXFLAGS}
1848 64-bit int: ${DBUS_INT64_TYPE}
1849 32-bit int: ${DBUS_INT32_TYPE}
1850 16-bit int: ${DBUS_INT16_TYPE}
1851 Doxygen: ${DOXYGEN:-not found}
1852 xmlto: ${XMLTO:-not found}"
1855 Rebuilding generated files: ${USE_MAINTAINER_MODE}
1856 gcc coverage profiling: ${enable_compiler_coverage}
1857 Building embedded tests: ${enable_embedded_tests}
1858 Building modular tests: ${enable_modular_tests}
1859 - with GLib: ${with_glib}
1860 Building verbose mode: ${enable_verbose_mode}
1861 Building assertions: ${enable_asserts}
1862 Building checks: ${enable_checks}
1863 Building bus stats API: ${enable_stats}
1864 Building SELinux support: ${have_selinux}
1865 Building inotify support: ${have_inotify}
1866 Building dnotify support: ${have_dnotify}
1867 Building kqueue support: ${have_kqueue}
1868 Building systemd support: ${have_systemd}
1869 Building X11 code: ${have_x11}
1870 Building Doxygen docs: ${enable_doxygen_docs}
1871 Building XML docs: ${enable_xml_docs}
1872 Building cache support: ${enable_userdb_cache}
1873 Building launchd support: ${have_launchd}
1874 Init scripts style: ${with_init_scripts}
1875 Abstract socket names: ${ac_cv_have_abstract_sockets}
1876 System bus socket: ${DBUS_SYSTEM_SOCKET}
1877 System bus address: ${DBUS_SYSTEM_BUS_DEFAULT_ADDRESS}
1878 System bus PID file: ${DBUS_SYSTEM_PID_FILE}
1879 Session bus listens on: ${DBUS_SESSION_BUS_LISTEN_ADDRESS}
1880 Session clients connect to: ${DBUS_SESSION_BUS_CONNECT_ADDRESS}
1881 Console auth dir: ${DBUS_CONSOLE_AUTH_DIR}
1882 Console owner file: ${have_console_owner_file}
1883 Console owner file path: ${DBUS_CONSOLE_OWNER_FILE}
1884 System bus user: ${DBUS_USER}
1885 Session bus services dir: ${EXPANDED_DATADIR}/dbus-1/services
1886 'make check' socket dir: ${TEST_SOCKET_DIR}
1888 if test x$have_launchd = xyes; then
1889 echo " launchd agent dir: ${LAUNCHD_AGENT_DIR}"
1893 if test x$enable_embedded_tests = xyes; then
1894 echo "NOTE: building with unit tests increases the size of the installed library and renders it insecure."
1896 if test x$enable_embedded_tests = xyes -a x$enable_asserts = xno; then
1897 echo "NOTE: building with embedded tests but without assertions means tests may not properly report failures (this configuration is only useful when doing something like profiling the tests)"
1899 if test x$enable_compiler_coverage = xyes; then
1900 echo "NOTE: building with coverage profiling is definitely for developers only."
1902 if test x$enable_verbose_mode = xyes; then
1903 echo "NOTE: building with verbose mode increases library size, may slightly increase security risk, and decreases performance."
1905 if test x$enable_asserts = xyes; then
1906 echo "NOTE: building with assertions increases library size and decreases performance."
1908 if test x$enable_checks = xno; then
1909 echo "NOTE: building without checks for arguments passed to public API makes it harder to debug apps using D-Bus, but will slightly decrease D-Bus library size and _very_ slightly improve performance."
1912 if test "x$DBUS_HAVE_INT64" = x0; then
1913 AC_MSG_WARN([You have disabled 64-bit integers via --without-64-bit.
1915 This removes parts of the standard D-Bus API and ABI (the 't' and 'x'
1916 typecodes, the dbus_int64_t and dbus_uint64_t types, etc.) and should only be
1917 used if your compiler lacks support for 64-bit integers. Please report a bug
1918 with details of your platform and compiler.
1920 This option is likely to be removed in future, unless the D-Bus developers
1921 receive reports that it is still needed.