4 m4_define([dbus_major_version], [1])
5 m4_define([dbus_minor_version], [7])
6 m4_define([dbus_micro_version], [0])
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(xml, AS_HELP_STRING([--with-xml=[libxml/expat]],[XML library to use (libxml may be named libxml2 on some systems)]))
162 AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
163 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]))
164 AC_ARG_WITH(test-socket-dir, AS_HELP_STRING([--with-test-socket-dir=[dirname]],[Where to put sockets for make check]))
165 AC_ARG_WITH(system-pid-file, AS_HELP_STRING([--with-system-pid-file=[pidfile]],[PID file for systemwide daemon]))
166 AC_ARG_WITH(system-socket, AS_HELP_STRING([--with-system-socket=[filename]],[UNIX domain socket for systemwide daemon]))
167 AC_ARG_WITH(console-auth-dir, AS_HELP_STRING([--with-console-auth-dir=[dirname]],[directory to check for console ownerhip]))
168 AC_ARG_WITH(console-owner-file, AS_HELP_STRING([--with-console-owner-file=[filename]],[file whose owner determines current console owner]))
169 AC_ARG_WITH(launchd-agent-dir, AS_HELP_STRING([--with-launchd-agent-dir=[dirname]],[directory to put the launchd agent (default: /Library/LaunchAgents)]))
170 AC_ARG_WITH(dbus_user, AS_HELP_STRING([--with-dbus-user=<user>],[User for running the DBUS daemon (messagebus)]))
171 AC_ARG_WITH(dbus_daemondir, AS_HELP_STRING([--with-dbus-daemondir=[dirname]],[Directory for installing the DBUS daemon]))
173 AC_ARG_ENABLE([embedded-tests],
174 AS_HELP_STRING([--enable-embedded-tests],
175 [enable unit test code in the library and binaries]),
176 [], [enable_embedded_tests=$enable_developer])
177 AC_ARG_ENABLE([modular-tests],
178 AS_HELP_STRING([--enable-modular-tests],
179 [enable modular regression tests (requires GLib)]),
180 [], [enable_modular_tests=auto])
181 # --enable-tests overrides both --enable-embedded-tests and
182 # --enable-modular-tests
183 AC_ARG_ENABLE([tests],
184 AS_HELP_STRING([--enable-tests],
185 [enable/disable all tests, overriding embedded-tests/modular-tests]),
187 if test "x$enableval" = xyes; then
188 AC_MSG_NOTICE([Full test coverage was requested with --enable-tests=yes])
189 AC_MSG_NOTICE([This has many dependencies (GLib, dbus-glib, Python)])
191 enable_embedded_tests=$enableval
192 enable_modular_tests=$enableval
196 # DBUS_ENABLE_EMBEDDED_TESTS controls unit tests built in to .c files
197 # and also some stuff in the test/ subdir. DBUS_BUILD_TESTS was an older
199 AM_CONDITIONAL([DBUS_BUILD_TESTS], [test "x$enable_embedded_tests" = xyes])
200 AM_CONDITIONAL([DBUS_ENABLE_EMBEDDED_TESTS],
201 [test "x$enable_embedded_tests" = xyes])
202 if test "x$enable_embedded_tests" = xyes; then
203 AC_DEFINE([DBUS_ENABLE_EMBEDDED_TESTS], [1],
204 [Define to build test code into the library and binaries])
205 AC_DEFINE([DBUS_BUILD_TESTS], [1],
206 [Define to build test code into the library and binaries])
209 # DBUS_ENABLE_MODULAR_TESTS controls tests that work based on public API.
210 # These use GTest, from GLib, because life's too short. They're enabled by
211 # default (unless you don't have GLib), because they don't bloat the library
214 AC_DEFINE([GLIB_VERSION_MIN_REQUIRED], [GLIB_VERSION_2_26], [Ignore post-2.26 deprecations])
215 AC_DEFINE([GLIB_VERSION_MAX_ALLOWED], [GLIB_VERSION_2_26], [Prevent post-2.26 APIs])
219 if test "x$enable_modular_tests" != xno; then
220 PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.24, gio-2.0 >= 2.24],
222 [if test "x$enable_modular_tests" = xyes; then
223 AC_MSG_NOTICE([Full test coverage (--enable-modular-tests=yes or --enable-tests=yes) requires GLib])
224 AC_MSG_ERROR([$GLIB_ERRORS])
225 else # assumed to be "auto"
228 # If dbus-gmain.[ch] returned to libdbus then we wouldn't need this
229 PKG_CHECK_MODULES([DBUS_GLIB], [dbus-glib-1],
231 [if test "x$enable_modular_tests" = xyes; then
232 AC_MSG_NOTICE([Full test coverage (--enable-modular-tests=yes or --enable-tests=yes) requires dbus-glib])
233 AC_MSG_ERROR([$DBUS_GLIB_ERRORS])
234 else # assumed to be "auto"
238 if test "x$enable_modular_tests" != xno; then
239 AC_DEFINE([DBUS_ENABLE_MODULAR_TESTS], [1],
240 [Define to build independent test binaries])
242 AM_CONDITIONAL([DBUS_ENABLE_MODULAR_TESTS],
243 [test "x$enable_modular_tests" != xno])
245 if test "x$with_glib" != xno; then
246 AC_DEFINE([DBUS_WITH_GLIB], [1],
247 [Define if GLib, GObject, GIO are available])
249 AM_CONDITIONAL([DBUS_WITH_GLIB], [test "x$with_glib" != xno])
251 AC_ARG_ENABLE([installed-tests],
252 AS_HELP_STRING([--enable-installed-tests],
253 [enable unit test code in the library and binaries]),
254 [], [enable_installed_tests=no])
255 AM_CONDITIONAL([DBUS_ENABLE_INSTALLED_TESTS],
256 [test "x$enable_installed_tests" = xyes])
258 if test "x$enable_tests" = xyes; then
259 # full test coverage is required, Python is a hard dependency
260 AC_MSG_NOTICE([Full test coverage (--enable-tests=yes) requires Python, dbus-python, pygobject])
261 AM_PATH_PYTHON([2.6])
262 AC_MSG_CHECKING([for Python modules for full test coverage])
263 if "$PYTHON" -c "import dbus, gobject, dbus.mainloop.glib"; then
267 AC_MSG_ERROR([cannot import dbus, gobject, dbus.mainloop.glib Python modules])
270 # --enable-tests not given: do not abort if Python is missing
271 AM_PATH_PYTHON([2.6], [], [:])
274 if test x$enable_verbose_mode = xyes; then
275 AC_DEFINE(DBUS_ENABLE_VERBOSE_MODE,1,[Support a verbose mode])
278 if test x$enable_asserts = xno; then
279 AC_DEFINE(DBUS_DISABLE_ASSERT,1,[Disable assertion checking])
280 DISABLE_UNUSED_WARNINGS="unused-label"
283 # -rdynamic is needed for glibc's backtrace_symbols to work.
284 # No clue how much overhead this adds, but it's useful
285 # to do this on any assertion failure,
286 # so for now it's enabled anytime asserts are (currently not
287 # in production builds).
289 # To get -rdynamic you pass -export-dynamic to libtool.
290 AC_DEFINE(DBUS_BUILT_R_DYNAMIC,1,[whether -export-dynamic was passed to libtool])
291 R_DYNAMIC_LDFLAG=-export-dynamic
293 AC_SUBST(R_DYNAMIC_LDFLAG)
295 if test x$enable_checks = xno; then
296 AC_DEFINE(DBUS_DISABLE_CHECKS,1,[Disable public API sanity checking])
297 AC_DEFINE(G_DISABLE_CHECKS,1,[Disable GLib public API sanity checking])
298 DISABLE_UNUSED_WARNINGS="unused-label"
301 if test x$enable_userdb_cache = xyes; then
302 AC_DEFINE(DBUS_ENABLE_USERDB_CACHE,1,[Build with caching of user data])
305 if test x$enable_compiler_coverage = xyes; then
306 ## so that config.h changes when you toggle gcov support
307 AC_DEFINE_UNQUOTED(DBUS_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing])
310 # glibc21.m4 serial 3
311 dnl Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc.
312 dnl This file is free software; the Free Software Foundation
313 dnl gives unlimited permission to copy and/or distribute it,
314 dnl with or without modifications, as long as this notice is preserved.
316 # Test for the GNU C Library, version 2.1 or newer.
319 AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
320 ac_cv_gnu_library_2_1,
321 [AC_EGREP_CPP([Lucky GNU user],
323 #include <features.h>
324 #ifdef __GNU_LIBRARY__
325 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
330 ac_cv_gnu_library_2_1=yes,
331 ac_cv_gnu_library_2_1=no)
337 AC_CHECK_SIZEOF(char)
338 AC_CHECK_SIZEOF(short)
339 AC_CHECK_SIZEOF(long)
341 AC_CHECK_SIZEOF(void *)
342 AC_CHECK_SIZEOF(long long)
343 AC_CHECK_SIZEOF(__int64)
345 AC_ARG_WITH([64-bit],
346 [AS_HELP_STRING([--without-64-bit],
347 [If you have to use this option, please report it as a bug])],
351 ### See what our 64 bit type is called
352 AC_MSG_CHECKING([64-bit integer type])
357 dbusint64_constant='(val)'
358 dbusuint64_constant='(val)'
359 dbusint64_printf_modifier='""'
363 dbusint64_constant='(val##L)'
364 dbusuint64_constant='(val##UL)'
365 dbusint64_printf_modifier='"l"'
367 $ac_cv_sizeof_long_long)
368 dbusint64='long long'
369 dbusint64_constant='(val##LL)'
370 dbusuint64_constant='(val##ULL)'
371 # Ideally we discover what the format is, but this is
372 # only used in verbose mode, so eh...
373 if test x"$ac_cv_gnu_library_2_1" = xyes; then
374 dbusint64_printf_modifier='"ll"'
377 $ac_cv_sizeof___int64)
379 dbusint64_constant='(val##i64)'
380 dbusuint64_constant='(val##ui64)'
382 if test x"$ac_cv_gnu_library_2_1" = xyes; then
383 dbusint64_printf_modifier='"ll"'
389 [test "x$with_64_bit" = xno],
391 DBUS_INT64_TYPE="no_int64_type_detected"
394 DBUS_UINT64_CONSTANT=
395 AC_MSG_RESULT([disabled via --without-64-bit])
398 [test -z "$dbusint64"],
399 [AC_MSG_RESULT([not found])
400 AC_MSG_ERROR([Could not find a 64-bit integer type.
402 Please report a bug here with details of your platform and compiler:
404 http://bugs.freedesktop.org/enter_bug.cgi?product=DBus&component=core
406 To compile D-Bus with all 64-bit integer types removed (not recommended), use
407 the option "--without-64-bit".
409 This option is likely to be removed in future, unless you report that your
414 DBUS_INT64_TYPE="$dbusint64"
416 DBUS_INT64_CONSTANT="$dbusint64_constant"
417 DBUS_UINT64_CONSTANT="$dbusuint64_constant"
418 if test x"$dbusint64_printf_modifier" != x; then
419 AC_DEFINE_UNQUOTED(DBUS_INT64_PRINTF_MODIFIER, [$dbusint64_printf_modifier], [Define to printf modifier for 64 bit integer type])
421 AC_MSG_RESULT($DBUS_INT64_TYPE)
424 AC_SUBST(DBUS_INT64_TYPE)
425 AC_SUBST(DBUS_INT64_CONSTANT)
426 AC_SUBST(DBUS_UINT64_CONSTANT)
427 AC_SUBST(DBUS_HAVE_INT64)
429 ### see what 32-bit int is called
430 AC_MSG_CHECKING([32-bit integer type])
444 if test -z "$dbusint32" ; then
445 DBUS_INT32_TYPE="no_int32_type_detected"
446 AC_MSG_ERROR([No 32-bit integer type found])
448 DBUS_INT32_TYPE="$dbusint32"
449 AC_MSG_RESULT($DBUS_INT32_TYPE)
452 AC_SUBST(DBUS_INT32_TYPE)
454 ### see what 16-bit int is called
455 AC_MSG_CHECKING([16-bit integer type])
466 if test -z "$dbusint16" ; then
467 DBUS_INT16_TYPE="no_int16_type_detected"
468 AC_MSG_ERROR([No 16-bit integer type found])
470 DBUS_INT16_TYPE="$dbusint16"
471 AC_MSG_RESULT($DBUS_INT16_TYPE)
474 AC_SUBST(DBUS_INT16_TYPE)
479 # check at compile-time, so that it is possible to build universal
480 # (with multiple architectures at once on the compile line)
481 AH_VERBATIM([WORDS_BIGENDIAN_DARWIN], [
482 /* Use the compiler-provided endianness defines to allow universal compiling. */
483 #if defined(__BIG_ENDIAN__)
484 #define WORDS_BIGENDIAN 1
493 dnl **********************************
494 dnl *** va_copy checks (from GLib) ***
495 dnl **********************************
496 dnl we currently check for all three va_copy possibilities, so we get
497 dnl all results in config.log for bug reports.
498 AC_CACHE_CHECK([for an implementation of va_copy()],dbus_cv_va_copy,[
499 AC_LINK_IFELSE([AC_LANG_SOURCE([#include <stdarg.h>
501 static void f (int i, ...) {
502 va_list args1, args2;
504 va_copy (args2, args1);
505 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
507 va_end (args1); va_end (args2);
513 [dbus_cv_va_copy=yes],
514 [dbus_cv_va_copy=no])
516 AC_CACHE_CHECK([for an implementation of __va_copy()],dbus_cv___va_copy,[
517 AC_LINK_IFELSE([AC_LANG_SOURCE([#include <stdarg.h>
519 static void f (int i, ...) {
520 va_list args1, args2;
522 __va_copy (args2, args1);
523 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
525 va_end (args1); va_end (args2);
531 [dbus_cv___va_copy=yes],
532 [dbus_cv___va_copy=no])
535 if test "x$dbus_cv_va_copy" = "xyes"; then
536 dbus_va_copy_func=va_copy
537 else if test "x$dbus_cv___va_copy" = "xyes"; then
538 dbus_va_copy_func=__va_copy
542 if test -n "$dbus_va_copy_func"; then
543 AC_DEFINE_UNQUOTED(DBUS_VA_COPY,$dbus_va_copy_func,[A 'va_copy' style function])
547 AC_CACHE_CHECK([whether va_lists can be copied by value],
549 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
555 static void f (int i, ...) {
556 va_list args1, args2;
559 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
561 va_end (args1); va_end (args2);
568 [dbus_cv_va_val_copy=yes],
569 [dbus_cv_va_val_copy=no],
570 [dbus_cv_va_val_copy=yes])
574 if test "x$dbus_cv_va_val_copy" = "xno"; then
575 AC_DEFINE(DBUS_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
581 AC_CACHE_CHECK([whether $CC knows __sync_sub_and_fetch()],
582 dbus_cv_sync_sub_and_fetch,
584 AC_LANG_PROGRAM([[]], [[int a = 4; int b = __sync_sub_and_fetch(&a, 4); exit(b); ]])],
585 [dbus_cv_sync_sub_and_fetch=yes],
586 [dbus_cv_sync_sub_and_fetch=no])
589 if test "x$dbus_cv_sync_sub_and_fetch" = "xyes" ; then
595 AC_DEFINE_UNQUOTED([DBUS_USE_SYNC], [$have_sync], [Use the gcc __sync extension])
597 #### Various functions
598 AC_SEARCH_LIBS(socket,[socket network])
599 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
601 AC_CHECK_FUNCS(vsnprintf vasprintf nanosleep usleep setenv clearenv unsetenv socketpair getgrouplist fpathconf setrlimit poll setlocale localeconv strtoll strtoull issetugid getresuid)
603 AC_CHECK_HEADERS([syslog.h])
604 if test "x$ac_cv_header_syslog_h" = "xyes"; then
605 AC_CHECK_DECLS([LOG_PERROR], [], [], [[#include <syslog.h>]])
608 #### Check for broken poll; taken from Glib's configure
610 AC_MSG_CHECKING([for broken poll])
611 AC_RUN_IFELSE([AC_LANG_SOURCE([[
615 #ifdef HAVE_SYS_POLL_H
616 #include <sys/poll.h>
619 struct pollfd fds[1];
621 fd = open("/dev/null", 1);
623 fds[0].events = POLLIN;
625 if (poll(fds, 1, 0) < 0 || (fds[0].revents & POLLNVAL) != 0) {
626 exit(1); /* Does not work for devices -- fail */
632 AC_DEFINE(BROKEN_POLL,1,[poll doesn't work on devices])],
633 [broken_poll="no (cross compiling)"])
634 AC_MSG_RESULT($broken_poll)
636 AC_MSG_CHECKING(for dirfd)
637 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
638 #include <sys/types.h>
646 [dbus_have_dirfd=yes],
647 [dbus_have_dirfd=no])
648 AC_MSG_RESULT($dbus_have_dirfd)
649 if test "$dbus_have_dirfd" = yes; then
650 AC_DEFINE(HAVE_DIRFD,1,[Have dirfd function])
652 AC_MSG_CHECKING(for DIR *dirp->dd_fd)
653 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
654 #include <sys/types.h>
663 [dbus_have_ddfd=yes],
665 AC_MSG_RESULT($dbus_have_ddfd)
666 if test "$dbus_have_ddfd" = yes; then
667 AC_DEFINE(HAVE_DDFD,1,[Have the ddfd member of DIR])
671 AC_CHECK_HEADERS(sys/resource.h)
673 AC_CHECK_HEADERS(dirent.h)
675 AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)])
677 AC_CHECK_HEADERS(errno.h)
679 AC_CHECK_HEADERS(signal.h)
681 AC_CHECK_HEADERS(locale.h)
683 AC_CHECK_HEADERS(byteswap.h)
685 AC_CHECK_HEADERS(unistd.h)
687 AC_CHECK_HEADERS(ws2tcpip.h)
689 AC_CHECK_HEADERS(wspiapi.h)
691 # Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris
695 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS" ;;
698 # checking for a posix version of getpwnam_r
699 # if we are cross compiling and can not run the test
700 # assume getpwnam_r is the posix version
701 # it is up to the person cross compiling to change
702 # this behavior if desired
704 AC_CACHE_CHECK([for posix getpwnam_r],
705 ac_cv_func_posix_getpwnam_r,
706 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
713 struct passwd pwd, *pwptr = &pwd;
716 error = getpwnam_r ("", &pwd, buffer,
717 sizeof (buffer), &pwptr);
718 return (error < 0 && errno == ENOSYS)
721 [ac_cv_func_posix_getpwnam_r=yes],
722 [ac_cv_func_posix_getpwnam_r=no],
723 [ac_cv_func_posix_getpwnam_r=yes]
727 if test "$ac_cv_func_posix_getpwnam_r" = yes; then
728 AC_DEFINE(HAVE_POSIX_GETPWNAM_R,1,
729 [Have POSIX function getpwnam_r])
731 AC_CACHE_CHECK([for nonposix getpwnam_r],
732 ac_cv_func_nonposix_getpwnam_r,
733 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pwd.h>]], [[char buffer[10000];
735 getpwnam_r ("", &pwd, buffer,
736 sizeof (buffer));]])],
737 [ac_cv_func_nonposix_getpwnam_r=yes],
738 [ac_cv_func_nonposix_getpwnam_r=no])])
739 if test "$ac_cv_func_nonposix_getpwnam_r" = yes; then
740 AC_DEFINE(HAVE_NONPOSIX_GETPWNAM_R,1,
741 [Have non-POSIX function getpwnam_r])
745 dnl check for socklen_t
746 AC_MSG_CHECKING(whether socklen_t is defined)
747 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
748 #include <sys/types.h>
749 #include <sys/socket.h>
755 [dbus_have_socklen_t=yes],
756 [dbus_have_socklen_t=no])
757 AC_MSG_RESULT($dbus_have_socklen_t)
759 if test "x$dbus_have_socklen_t" = "xyes"; then
760 AC_DEFINE(HAVE_SOCKLEN_T,1,[Have socklen_t type])
763 dnl check for writev header and writev function so we're
764 dnl good to go if HAVE_WRITEV gets defined.
765 AC_CHECK_HEADERS(sys/uio.h, [AC_CHECK_FUNCS(writev)])
767 dnl needed on darwin for NAME_MAX
768 AC_CHECK_HEADERS(sys/syslimits.h)
770 dnl Make it easy to check if we have MSG_NOSIGNAL without actually having to include sys/socket.h
771 AC_CHECK_DECLS([MSG_NOSIGNAL], [], [], [[ #include <sys/types.h>
772 #include <sys/socket.h> ]])
774 dnl check for flavours of varargs macros (test from GLib)
775 AC_MSG_CHECKING(for ISO C99 varargs macros in C)
776 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
777 int a(int p1, int p2, int p3);
778 #define call_a(...) a(1,__VA_ARGS__)
781 [dbus_have_iso_c_varargs=yes],
782 [dbus_have_iso_c_varargs=no])
783 AC_MSG_RESULT($dbus_have_iso_c_varargs)
785 AC_MSG_CHECKING(for GNUC varargs macros)
786 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
787 int a(int p1, int p2, int p3);
788 #define call_a(params...) a(1,params)
791 [dbus_have_gnuc_varargs=yes],
792 [dbus_have_gnuc_varargs=no])
793 AC_MSG_RESULT($dbus_have_gnuc_varargs)
795 dnl Output varargs tests
796 if test x$dbus_have_iso_c_varargs = xyes; then
797 AC_DEFINE(HAVE_ISO_VARARGS,1,[Have ISO C99 varargs macros])
799 if test x$dbus_have_gnuc_varargs = xyes; then
800 AC_DEFINE(HAVE_GNUC_VARARGS,1,[Have GNU-style varargs macros])
803 dnl Check for various credentials.
804 AC_MSG_CHECKING(for struct cmsgcred)
805 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
806 #include <sys/types.h>
807 #include <sys/socket.h>
809 struct cmsgcred cred;
813 [dbus_have_struct_cmsgcred=yes],
814 [dbus_have_struct_cmsgcred=no])
815 AC_MSG_RESULT($dbus_have_struct_cmsgcred)
817 if test x$dbus_have_struct_cmsgcred = xyes; then
818 AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure])
821 AC_CHECK_FUNCS(getpeerucred getpeereid)
823 AC_CHECK_FUNCS(pipe2 accept4)
825 #### Abstract sockets
827 if test x$enable_abstract_sockets = xauto; then
830 AC_CACHE_CHECK([abstract socket namespace],
831 ac_cv_have_abstract_sockets,
832 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
834 #include <sys/types.h>
838 #include <sys/socket.h>
845 struct sockaddr_un addr;
847 listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
851 fprintf (stderr, "socket() failed: %s\n", strerror (errno));
855 memset (&addr, '\0', sizeof (addr));
856 addr.sun_family = AF_UNIX;
857 strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
858 /* SUN_LEN uses strlen() so need to calculate it before adding \0 at the
861 slen = SUN_LEN(&addr);
862 addr.sun_path[0] = '\0'; /* this is what makes it abstract */
864 if (bind (listen_fd, (struct sockaddr*) &addr, slen) < 0)
866 fprintf (stderr, "Abstract socket namespace bind() failed: %s\n",
873 [ac_cv_have_abstract_sockets=yes],
874 [ac_cv_have_abstract_sockets=no],
876 ac_cv_have_abstract_sockets=no
880 if test x$warn_on_xcompile = xyes ; then
881 AC_MSG_WARN([Cannot check for abstract sockets when cross-compiling, please use --enable-abstract-sockets])
886 if test x$enable_abstract_sockets = xyes; then
887 if test x$ac_cv_have_abstract_sockets = xno; then
888 AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.])
892 if test x$enable_abstract_sockets = xno; then
893 ac_cv_have_abstract_sockets=no;
896 if test x$ac_cv_have_abstract_sockets = xyes ; then
897 DBUS_PATH_OR_ABSTRACT=abstract
898 AC_DEFINE(HAVE_ABSTRACT_SOCKETS,1,[Have abstract socket namespace])
900 DBUS_PATH_OR_ABSTRACT=path
903 # this is used in addresses to prefer abstract, e.g.
904 # unix:path=/foo or unix:abstract=/foo
905 AC_SUBST(DBUS_PATH_OR_ABSTRACT)
909 #### Sort out XML library
912 AC_CHECK_LIB(expat, XML_ParserCreate_MM,
913 [ AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false) ],
916 # see what we want to use
917 dbus_use_libxml=false
919 if test x$with_xml = xexpat; then
920 if ! $have_expat ; then
921 AC_MSG_ERROR([Explicitly requested expat but expat not found])
924 elif test x$with_xml = xlibxml; then
925 PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= 2.6.0, have_libxml=true, have_libxml=false)
926 if ! $have_libxml ; then
927 AC_MSG_ERROR([Explicitly requested libxml but libxml not found])
931 ### expat is the default because libxml can't currently survive
932 ### our brutal OOM-handling unit test setup.
933 ### http://bugzilla.gnome.org/show_bug.cgi?id=109368
934 if test x$have_expat = xfalse; then
935 AC_MSG_ERROR([Could not find expat.h, check config.log for failed attempts])
937 ### By default, only use Expat since it's tested and known to work. If you're a
938 ### general-purpose OS vendor, please don't enable libxml. For embedded use
939 ### if your OS is built around libxml, that's another case.
943 AM_CONDITIONAL(DBUS_USE_EXPAT, $dbus_use_expat)
944 AM_CONDITIONAL(DBUS_USE_LIBXML, $dbus_use_libxml)
946 if $dbus_use_expat; then
950 if $dbus_use_libxml; then
951 XML_LIBS=$LIBXML_LIBS
952 XML_CFLAGS=$LIBXML_CFLAGS
954 AC_SUBST([XML_CFLAGS])
957 # Thread lib detection
958 AC_ARG_VAR([THREAD_LIBS])
960 LIBS="$LIBS $THREAD_LIBS"
962 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."
964 # Don't do these automatic checks if the user set THREAD_LIBS on the
965 # configure command-line. If they did, we assume they're right.
967 # We also don't do these checks on Windows, because you don't need magical
968 # linker flags to have threading support there.
969 AS_IF([test "x$dbus_unix" = xyes && test "x$THREAD_LIBS" = x],
971 # Mandatory pthread functions. In principle, some of these could be made
972 # optional if there are platforms that don't have them.
974 # Currently, we only look in -lpthread.
975 # In principle we might need to look in -lpthreads, -lthreads, ...
976 # as well - please file a bug if your platform needs this.
977 AC_SEARCH_LIBS([pthread_cond_timedwait],
979 [THREAD_LIBS="$LIBS"],
980 [AC_MSG_ERROR([pthread_cond_timedwait $is_missing_pthread_function])],
982 AC_SEARCH_LIBS([pthread_mutexattr_init],
984 [THREAD_LIBS="$LIBS"],
985 [AC_MSG_ERROR([pthread_mutexattr_init $is_missing_pthread_function])],
987 AC_SEARCH_LIBS([pthread_mutexattr_settype],
989 [THREAD_LIBS="$LIBS"],
990 [AC_MSG_ERROR([pthread_mutexattr_settype $is_missing_pthread_function])],
993 # Optional, for monotonic clocks. Because it's optional, this check
994 # is non-fatal if we don't find it.
995 AC_SEARCH_LIBS([pthread_condattr_setclock],
997 [THREAD_LIBS="$LIBS"])
999 AS_IF([test "x$ac_cv_search_pthread_condattr_setclock" != xno],
1001 AC_SEARCH_LIBS([clock_getres], [rt], [THREAD_LIBS="$LIBS"])
1002 AC_MSG_CHECKING([for CLOCK_MONOTONIC])
1003 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1005 #include <pthread.h>
1007 struct timespec monotonic_timer;
1008 pthread_condattr_t attr;
1009 pthread_condattr_init (&attr);
1010 pthread_condattr_setclock (&attr, CLOCK_MONOTONIC);
1011 clock_getres (CLOCK_MONOTONIC,&monotonic_timer);
1013 [have_clock_monotonic=true],
1014 [have_clock_monotonic=false])
1015 AS_IF([test x$have_clock_monotonic = xtrue],
1017 AC_MSG_RESULT([found])
1018 AC_DEFINE(HAVE_MONOTONIC_CLOCK, 1, [Define if we have CLOCK_MONOTONIC])
1020 [AC_MSG_RESULT([not found])])
1021 ]) dnl have pthread_condattr_setclock
1026 AC_SUBST([THREAD_LIBS])
1029 if test x$enable_selinux = xno ; then
1032 # See if we have SELinux library
1033 AC_CHECK_LIB(selinux, is_selinux_enabled,
1034 have_selinux=yes, have_selinux=no)
1036 # see if we have the SELinux header with the new D-Bus stuff in it
1037 if test x$have_selinux = xyes ; then
1038 AC_MSG_CHECKING([for DBUS Flask permissions in selinux/av_permissions.h])
1039 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <selinux/av_permissions.h>]],
1040 [[#ifdef DBUS__ACQUIRE_SVC return 0;
1042 #error DBUS__ACQUIRE_SVC not defined
1046 AC_MSG_RESULT($have_selinux)
1049 if test x$enable_selinux = xauto ; then
1050 if test x$have_selinux = xno ; then
1051 AC_MSG_WARN([Sufficiently new SELinux library not found])
1054 if test x$have_selinux = xno ; then
1055 AC_MSG_ERROR([SElinux explicitly required, and SELinux library not found])
1060 AM_CONDITIONAL(HAVE_SELINUX, test x$have_selinux = xyes)
1062 if test x$have_selinux = xyes ; then
1063 # the selinux code creates threads
1064 # which requires libpthread even on linux
1065 AC_CHECK_FUNC(pthread_create,,[AC_CHECK_LIB(pthread,pthread_create,
1066 [SELINUX_THREAD_LIBS="-lpthread"])])
1068 SELINUX_LIBS="-lselinux $SELINUX_THREAD_LIBS"
1069 AC_DEFINE(HAVE_SELINUX,1,[SELinux support])
1075 if test x$enable_inotify = xno ; then
1078 AC_CHECK_HEADERS(sys/inotify.h, have_inotify=yes, have_inotify=no)
1081 dnl check if inotify backend is enabled
1082 if test x$have_inotify = xyes; then
1083 AC_DEFINE(DBUS_BUS_ENABLE_INOTIFY,1,[Use inotify])
1084 AC_CHECK_FUNCS(inotify_init1)
1087 AM_CONDITIONAL(DBUS_BUS_ENABLE_INOTIFY, test x$have_inotify = xyes)
1090 if test x$enable_dnotify = xno ; then
1093 if test x$have_inotify = xno -a x$host_os = xlinux-gnu -o x$host_os = xlinux; then
1100 dnl check if dnotify backend is enabled
1101 if test x$have_dnotify = xyes; then
1102 AC_DEFINE(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX,1,[Use dnotify on Linux])
1105 AM_CONDITIONAL(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX, test x$have_dnotify = xyes)
1107 # For simplicity, we require the userland API for epoll_create1 at
1108 # compile-time (glibc 2.9), but we'll run on kernels that turn out
1109 # not to have it at runtime.
1110 AC_ARG_ENABLE([epoll],
1111 [AS_HELP_STRING([--enable-epoll],[use epoll(4) on Linux])],
1112 [enable_epoll=$enableval], [enable_epoll=auto])
1113 if test x$enable_epoll = xno; then
1116 AC_MSG_CHECKING([for Linux epoll(4)])
1117 AC_LINK_IFELSE([AC_LANG_PROGRAM(
1120 #error This is not Linux
1122 #include <sys/epoll.h>
1124 [epoll_create1 (EPOLL_CLOEXEC);])],
1125 [have_linux_epoll=yes],
1126 [have_linux_epoll=no])
1127 AC_MSG_RESULT([$have_linux_epoll])
1129 if test x$enable_epoll,$have_linux_epoll = xyes,no; then
1130 AC_MSG_ERROR([epoll support explicitly enabled but not available])
1132 if test x$have_linux_epoll = xyes; then
1133 AC_DEFINE([DBUS_HAVE_LINUX_EPOLL], 1, [Define to use epoll(4) on Linux])
1135 AM_CONDITIONAL([HAVE_LINUX_EPOLL], [test x$have_linux_epoll = xyes])
1138 if test x$enable_kqueue = xno ; then
1142 AC_CHECK_HEADER(sys/event.h, , have_kqueue=no)
1143 AC_CHECK_FUNC(kqueue, , have_kqueue=no)
1145 if test x$enable_kqueue = xyes -a x$have_kqueue = xno; then
1146 AC_MSG_ERROR(kqueue support explicitly enabled but not available)
1150 dnl check if kqueue backend is enabled
1151 if test x$have_kqueue = xyes; then
1152 AC_DEFINE(DBUS_BUS_ENABLE_KQUEUE,1,[Use kqueue])
1155 AM_CONDITIONAL(DBUS_BUS_ENABLE_KQUEUE, test x$have_kqueue = xyes)
1158 if test x$enable_launchd = xno ; then
1162 AC_CHECK_HEADER([launch.h], , have_launchd=no)
1163 AC_PATH_PROG([LAUNCHCTL], [launchctl])
1164 if test "x$LAUNCHCTL" = "x"; then
1168 if test x$enable_launchd = xyes && test x$have_launchd = xno ; then
1169 AC_MSG_ERROR([launchd support explicitly enabled but not available])
1173 dnl check if launchd is enabled
1174 if test x$have_launchd = xyes; then
1175 AC_DEFINE(DBUS_ENABLE_LAUNCHD,1,[Use launchd autolaunch])
1178 AM_CONDITIONAL(DBUS_ENABLE_LAUNCHD, test x$have_launchd = xyes)
1180 #### Directory to place launchd agent file
1181 if test "x$with_launchd_agent_dir" = "x"; then
1182 LAUNCHD_AGENT_DIR="/Library/LaunchAgents"
1184 LAUNCHD_AGENT_DIR="$with_launchd_agent_dir"
1187 AC_SUBST(LAUNCHD_AGENT_DIR)
1189 dnl console owner file
1190 if test x$enable_console_owner_file = xno ; then
1191 have_console_owner_file=no;
1195 have_console_owner_file=yes;
1196 AC_DEFINE(HAVE_CONSOLE_OWNER_FILE,1,[Have console owner file])
1199 have_console_owner_file=no;;
1203 AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
1205 dnl systemd detection
1206 if test x$enable_systemd = xno ; then
1209 PKG_CHECK_MODULES(SYSTEMD,
1210 [libsystemd-login >= 32, libsystemd-daemon >= 32],
1215 if test x$have_systemd = xyes; then
1216 AC_DEFINE(HAVE_SYSTEMD,1,[Have systemd])
1219 if test x$enable_systemd = xyes -a x$have_systemd != xyes ; then
1220 AC_MSG_ERROR([Explicitly requested systemd support, but systemd not found])
1223 # libaudit detection
1224 if test x$enable_libaudit = xno ; then
1227 # See if we have audit daemon & capabilities library
1228 AC_CHECK_LIB(audit, audit_log_user_avc_message,
1229 have_libaudit=yes, have_libaudit=no)
1230 if test x$have_libaudit = xyes ; then
1231 AC_CHECK_LIB(cap-ng, capng_clear,
1232 have_libaudit=yes, have_libaudit=no)
1236 AM_CONDITIONAL(HAVE_LIBAUDIT, test x$have_libaudit = xyes)
1238 if test x$have_libaudit = xyes ; then
1239 SELINUX_LIBS="$SELINUX_LIBS -laudit -lcap-ng"
1240 AC_DEFINE(HAVE_LIBAUDIT,1,[audit daemon SELinux support])
1243 AC_SUBST([SELINUX_LIBS])
1245 # Check for ADT API (Solaris Basic Security Mode auditing)
1246 AC_MSG_CHECKING(for ADT API)
1247 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1248 #include <bsm/adt.h>
1249 adt_user_context = ADT_USER;
1250 ]], [[]])], [ check_adt_audit=yes ], [ check_adt_audit=no ])
1252 if test ${check_adt_audit} = yes
1254 AC_DEFINE([HAVE_ADT], [], [Adt audit API])
1261 AC_SUBST([ADT_LIBS])
1263 # Check for SCM_RIGHTS
1264 AC_MSG_CHECKING([for SCM_RIGHTS])
1265 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1266 #include <sys/types.h>
1267 #include <sys/socket.h>
1269 static int x = SCM_RIGHTS;
1271 [ AC_MSG_RESULT([supported])
1272 AC_DEFINE([HAVE_UNIX_FD_PASSING], [1], [Supports sending UNIX file descriptors]) ],
1273 [ AC_MSG_RESULT([not supported]) ])
1276 if test x$dbus_win = xyes ; then
1277 if test x$dbus_wince = xyes ; then
1278 NETWORK_libs="-lws2"
1280 NETWORK_libs="-lws2_32"
1284 AC_SUBST([NETWORK_libs])
1286 AC_ARG_WITH([valgrind],
1287 [AS_HELP_STRING([--with-valgrind],
1288 [Add instrumentation to help valgrind to understand our allocator])],
1292 if test x$with_valgrind != xno; then
1293 PKG_CHECK_MODULES([VALGRIND], [valgrind >= 3.6])
1294 AC_DEFINE([WITH_VALGRIND], [1], [Define to add Valgrind instrumentation])
1297 #### Set up final flags
1298 LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs"
1299 AC_SUBST([LIBDBUS_LIBS])
1305 AC_ARG_ENABLE([x11-autolaunch],
1306 AS_HELP_STRING([--enable-x11-autolaunch], [build with X11 auto-launch support]),
1307 [], [enable_x11_autolaunch=auto])
1309 if test "x$dbus_win" = xyes; then
1310 if test "x$enable_x11_autolaunch" = xyes; then
1311 AC_MSG_ERROR([X11 auto-launch is not supported on Windows])
1314 enable_x11_autolaunch=no
1319 if test "x$no_x" = xyes; then
1323 DBUS_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
1324 DBUS_X_CFLAGS="$X_CFLAGS"
1328 if test "x$enable_x11_autolaunch,$have_x11" = xyes,no; then
1329 AC_MSG_ERROR([X11 auto-launch requires X headers/libraries])
1331 # move from "auto" to "yes" or "no" if necessary
1332 if test "x$enable_x11_autolaunch" != xno; then
1333 enable_x11_autolaunch="$have_x11"
1337 if test "x$have_x11" = xyes ; then
1338 AC_DEFINE([DBUS_BUILD_X11], [1], [Define to build X11 functionality])
1341 if test "x$enable_x11_autolaunch" = xyes ; then
1342 AC_DEFINE([DBUS_ENABLE_X11_AUTOLAUNCH], [1], [Define to enable X11 auto-launch])
1345 AC_SUBST([DBUS_X_CFLAGS])
1346 AC_SUBST([DBUS_X_LIBS])
1348 #### gcc warning flags
1350 cc_supports_flag() {
1351 AC_MSG_CHECKING(whether $CC supports "$*")
1352 save_CFLAGS="$CFLAGS"
1354 AC_TRY_COMPILE([], [], [rc=yes], [rc=no])
1355 CFLAGS="$save_CFLAGS"
1356 AC_MSG_RESULT([$rc])
1360 TP_COMPILER_WARNINGS([WARNING_CFLAGS],
1361 dnl Use -Werror by default if:
1362 dnl - we're not on Windows (too many warnings), and
1363 dnl - we're in developer mode (a D-Bus developer, not a distro or end-user)
1364 dnl Override with --enable-Werror or --disable-Werror
1365 [test x$dbus_win != xyes -a x$dbus_cygwin != xyes -a x$enable_developer = xyes],
1367 dnl Enable these warnings if possible:
1371 missing-declarations \
1372 missing-prototypes \
1378 declaration-after-statement \
1381 dnl Disable these warnings if possible, make them non-fatal if possible,
1382 dnl and don't enable -Werror unless we succeeded.
1385 dnl - $DISABLE_UNUSED_WARNINGS disables unused-label warnings if not
1386 dnl checking or not asserting
1387 dnl - missing field initializers being 0 is a C feature, not a bug
1388 dnl - unused-parameter is to make writing callbacks less annoying
1390 dnl To be fixed one day:
1391 dnl - sign-compare and pointer-sign are workarounds for fd.o #17433
1392 dnl - type-limits is probably a bug too, but having the rest of -Wextra
1393 dnl is better than nothing
1394 [$DISABLE_UNUSED_WARNINGS \
1395 missing-field-initializers \
1402 if test "x$GCC" = "xyes"; then
1403 # We're treating -fno-common like a warning: it makes the linker more
1404 # strict, because on some systems the linker is *always* this strict
1405 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS], [-fno-common])
1407 # http://bugs.freedesktop.org/show_bug.cgi?id=10599
1408 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS], [-fno-strict-aliasing])
1410 if test "x$enable_ansi" = "xyes"; then
1411 TP_ADD_COMPILER_FLAG([WARNING_CFLAGS],
1412 [-ansi -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -pedantic])
1416 dnl In principle we should put WARNING_CFLAGS in each Makefile.am like
1417 dnl telepathy-glib does, since CFLAGS is meant to be reserved for the user...
1418 dnl but prepending to CFLAGS (so the user can override it with later CFLAGS)
1419 dnl is the next best thing
1420 CFLAGS="$WARNING_CFLAGS $CFLAGS"
1424 # Solaris' C library apparently needs these runes to be threadsafe...
1425 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT"
1426 # ... this opt-in to get sockaddr_in6 and sockaddr_storage...
1427 CFLAGS="$CFLAGS -D__EXTENSIONS__"
1428 # ... and this opt-in to get file descriptor passing support
1429 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=500"
1433 ### Doxygen Documentation
1435 AC_PATH_PROG(DOXYGEN, doxygen, no)
1437 AC_MSG_CHECKING([whether to build Doxygen documentation])
1439 if test x$DOXYGEN = xno ; then
1445 if test x$enable_doxygen_docs = xauto ; then
1446 if test x$have_doxygen = xno ; then
1447 enable_doxygen_docs=no
1449 enable_doxygen_docs=yes
1453 if test x$enable_doxygen_docs = xyes; then
1454 if test x$have_doxygen = xno; then
1455 AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found])
1459 AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test x$enable_doxygen_docs = xyes)
1460 AC_MSG_RESULT($enable_doxygen_docs)
1462 AC_CHECK_PROGS([XSLTPROC], [xsltproc])
1463 AM_CONDITIONAL([DBUS_HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
1465 ### XML Documentation
1467 AC_PATH_PROG(XMLTO, xmlto, no)
1469 AC_MSG_CHECKING([whether to build XML documentation])
1471 if test x$XMLTO = xno ; then
1477 if test x$enable_xml_docs = xauto ; then
1478 if test x$have_xmlto = xno ; then
1485 if test x$enable_xml_docs = xyes; then
1486 if test x$have_xmlto = xno; then
1487 AC_MSG_ERROR([Building XML docs explicitly required, but xmlto not found])
1491 AM_CONDITIONAL(DBUS_XML_DOCS_ENABLED, test x$enable_xml_docs = xyes)
1492 AC_MSG_RESULT($enable_xml_docs)
1494 AM_CONDITIONAL(DBUS_CAN_UPLOAD_DOCS,
1495 [test x$enable_doxygen_docs = xyes && test x$enable_xml_docs = xyes])
1497 #### Have to go $localstatedir->$prefix/var->/usr/local/var
1499 #### find the actual value for $prefix that we'll end up with
1500 ## (I know this is broken and should be done in the Makefile, but
1501 ## that's a major pain and almost nobody actually seems to care)
1502 AS_AC_EXPAND(EXPANDED_PREFIX, "$prefix")
1503 AS_AC_EXPAND(EXPANDED_LOCALSTATEDIR, "$localstatedir")
1504 AS_AC_EXPAND(EXPANDED_SYSCONFDIR, "$sysconfdir")
1505 AS_AC_EXPAND(EXPANDED_BINDIR, "$bindir")
1506 AS_AC_EXPAND(EXPANDED_LIBDIR, "$libdir")
1507 AS_AC_EXPAND(EXPANDED_LIBEXECDIR, "$libexecdir")
1508 AS_AC_EXPAND(EXPANDED_DATADIR, "$datadir")
1510 #### Check our operating system
1511 operating_system=unknown
1512 if test -f /etc/redhat-release || test -f $EXPANDED_SYSCONFDIR/redhat-release ; then
1513 operating_system=redhat
1516 if test -f /etc/slackware-version || test -f $EXPANDED_SYSCONFDIR/slackware-version ; then
1517 operating_system=slackware
1520 if test -f /usr/bin/cygwin1.dll || test -f $EXPANDED_BINDIR/cygwin1.dll ; then
1521 operating_system=cygwin
1524 #### Sort out init scripts
1526 if test x$with_init_scripts = x; then
1527 case x$operating_system in
1528 xredhat) with_init_scripts=redhat ;;
1529 xslackware) with_init_scripts=slackware ;;
1530 xcygwin) with_init_scripts=cygwin ;;
1531 *) with_init_scripts=none ;;
1535 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_RED_HAT, test x$with_init_scripts = xredhat)
1536 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_SLACKWARE, test x$with_init_scripts = xslackware)
1537 AM_CONDITIONAL(DBUS_INIT_SCRIPTS_CYGWIN, test x$with_init_scripts = xcygwin)
1539 ##### systemd unit files
1540 AC_ARG_WITH([systemdsystemunitdir],
1541 AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
1544 PKG_CHECK_EXISTS([systemd],
1545 [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)],
1546 [with_systemdsystemunitdir=no])
1548 if test "x$with_systemdsystemunitdir" != xno; then
1549 AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
1551 AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
1553 ##### Set up location for system bus socket
1554 if ! test -z "$with_system_socket"; then
1555 DBUS_SYSTEM_SOCKET=$with_system_socket
1557 DBUS_SYSTEM_SOCKET=${EXPANDED_LOCALSTATEDIR}/run/dbus/system_bus_socket
1560 AC_SUBST(DBUS_SYSTEM_SOCKET)
1561 AC_DEFINE_UNQUOTED(DBUS_SYSTEM_SOCKET,"$DBUS_SYSTEM_SOCKET",[The name of the socket the system bus listens on by default])
1563 ## System bus only listens on local domain sockets, and never
1564 ## on an abstract socket (so only root can create the socket).
1566 ## This won't work on Windows. It's not meant to - the system bus is
1567 ## meaningless on Windows anyway.
1569 ## This has to be suitable for hard-coding in client libraries as well as
1570 ## in the dbus-daemon's configuration, so it has to be valid to listen on
1571 ## and also to connect to. If this ever changes, it'll need to be split into
1572 ## two variables, one for the listening address and one for the connecting
1574 DBUS_SYSTEM_BUS_DEFAULT_ADDRESS="unix:path=$DBUS_SYSTEM_SOCKET"
1575 AC_SUBST(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS)
1576 AC_DEFINE_UNQUOTED(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS, "$DBUS_SYSTEM_BUS_DEFAULT_ADDRESS",[The default D-Bus address of the system bus])
1578 #### Set up the pid file
1579 if ! test -z "$with_system_pid_file"; then
1580 DBUS_SYSTEM_PID_FILE=$with_system_pid_file
1581 elif test x$with_init_scripts = xredhat ; then
1582 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/messagebus.pid
1584 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/dbus/pid
1587 AC_SUBST(DBUS_SYSTEM_PID_FILE)
1589 #### Directory to check for console ownership
1590 if ! test -z "$with_console_auth_dir"; then
1591 DBUS_CONSOLE_AUTH_DIR=$with_console_auth_dir
1593 DBUS_CONSOLE_AUTH_DIR=/var/run/console/
1596 AC_SUBST(DBUS_CONSOLE_AUTH_DIR)
1597 AC_DEFINE_UNQUOTED(DBUS_CONSOLE_AUTH_DIR, "$DBUS_CONSOLE_AUTH_DIR", [Directory to check for console ownerhip])
1599 #### File to check for console ownership
1600 if test x$have_console_owner_file = xyes; then
1601 if ! test -z "$with_console_owner_file"; then
1602 DBUS_CONSOLE_OWNER_FILE=$with_console_owner_file
1604 DBUS_CONSOLE_OWNER_FILE=/dev/console
1607 DBUS_CONSOLE_OWNER_FILE=
1610 AC_SUBST(DBUS_CONSOLE_OWNER_FILE)
1611 AC_DEFINE_UNQUOTED(DBUS_CONSOLE_OWNER_FILE, "$DBUS_CONSOLE_OWNER_FILE", [File to check for console ownerhip])
1613 #### User to start the system bus as
1614 if test -z "$with_dbus_user" ; then
1615 DBUS_USER=messagebus
1617 DBUS_USER=$with_dbus_user
1620 AC_DEFINE_UNQUOTED(DBUS_USER,"$DBUS_USER", [User for running the system BUS daemon])
1622 #### Prefix to install into
1623 DBUS_PREFIX=$EXPANDED_PREFIX
1624 AC_SUBST(DBUS_PREFIX)
1625 AC_DEFINE_UNQUOTED(DBUS_PREFIX,"$DBUS_PREFIX", [Prefix for installing DBUS])
1627 #### Direcotry to install data files into
1628 DBUS_DATADIR=$EXPANDED_DATADIR
1629 AC_SUBST(DBUS_DATADIR)
1630 AC_DEFINE_UNQUOTED(DBUS_DATADIR,"$DBUS_DATADIR", [Directory for installing DBUS data files])
1632 #### Directory to install dbus-daemon
1633 if test -z "$with_dbus_daemondir" ; then
1634 DBUS_DAEMONDIR=$EXPANDED_BINDIR
1636 DBUS_DAEMONDIR=$with_dbus_daemondir
1638 AC_SUBST(DBUS_DAEMONDIR)
1639 AC_DEFINE_UNQUOTED(DBUS_DAEMONDIR,"$DBUS_DAEMONDIR", [Directory for installing the DBUS daemon])
1641 #### Directory to install the other binaries
1642 DBUS_BINDIR="$EXPANDED_BINDIR"
1643 AC_SUBST(DBUS_BINDIR)
1644 AC_DEFINE_UNQUOTED(DBUS_BINDIR,"$DBUS_BINDIR", [Directory for installing the binaries])
1646 #### Directory to install the libexec binaries
1647 DBUS_LIBEXECDIR="$EXPANDED_LIBEXECDIR"
1648 AC_SUBST(DBUS_LIBEXECDIR)
1649 AC_DEFINE_UNQUOTED(DBUS_LIBEXECDIR,"$DBUS_LIBEXECDIR", [Directory for installing the libexec binaries])
1651 #### Tell tests where to find certain stuff in builddir
1654 # Useful in a cross-compilation environment, where the tests are run on the host system.
1655 AC_ARG_WITH(dbus-test-dir, AS_HELP_STRING([--with-dbus-test-dir=[dirname]],[path where the tests tools are available]),
1658 DBUS_TEST_EXEC="$DBUS_PWD/test"
1659 DBUS_TEST_DATA="$DBUS_PWD/test/data"
1661 AC_SUBST([DBUS_TEST_DATA])
1662 AC_SUBST([DBUS_TEST_EXEC])
1664 AC_DEFINE_UNQUOTED([DBUS_TEST_EXEC], ["$DBUS_TEST_EXEC"],
1665 [Full path to the daemon in the builddir])
1666 AC_DEFINE_UNQUOTED([DBUS_EXEEXT], ["$EXEEXT"],
1667 [Extension for executables, typically empty or .exe])
1669 AC_DEFINE_UNQUOTED(TEST_BUS_BINARY, ["$DBUS_PWD/bus/dbus-daemon$EXEEXT"],
1670 [Full path to the daemon in the builddir])
1671 AC_SUBST(TEST_BUS_BINARY)
1673 ## Export the non-setuid external helper
1674 TEST_LAUNCH_HELPER_BINARY="$DBUS_PWD/bus/dbus-daemon-launch-helper-test$EXEEXT"
1675 AC_SUBST(TEST_LAUNCH_HELPER_BINARY)
1676 AC_DEFINE_UNQUOTED(DBUS_TEST_LAUNCH_HELPER_BINARY, "$TEST_LAUNCH_HELPER_BINARY",
1677 [Full path to the launch helper test program in the builddir])
1679 #### Find socket directories
1680 if ! test -z "$TMPDIR" ; then
1681 DEFAULT_SOCKET_DIR=$TMPDIR
1682 elif ! test -z "$TEMP" ; then
1683 DEFAULT_SOCKET_DIR=$TEMP
1684 elif ! test -z "$TMP" ; then
1685 DEFAULT_SOCKET_DIR=$TMP
1687 DEFAULT_SOCKET_DIR=/tmp
1690 DEFAULT_SOCKET_DIR=`echo $DEFAULT_SOCKET_DIR | sed 's/+/%2B/g'`
1692 if ! test -z "$with_test_socket_dir" ; then
1693 TEST_SOCKET_DIR="$with_test_socket_dir"
1695 TEST_SOCKET_DIR=$DEFAULT_SOCKET_DIR
1697 AC_SUBST(TEST_SOCKET_DIR)
1698 AC_DEFINE_UNQUOTED(DBUS_TEST_SOCKET_DIR, "$TEST_SOCKET_DIR", [Where to put test sockets])
1700 if test "x$dbus_unix" = xyes; then
1701 TEST_LISTEN="unix:tmpdir=$TEST_SOCKET_DIR"
1703 TEST_LISTEN="tcp:host=localhost"
1705 AC_SUBST([TEST_LISTEN])
1706 AC_DEFINE_UNQUOTED([TEST_LISTEN], ["$TEST_LISTEN"],
1707 [Listening address for regression tests])
1709 if ! test -z "$with_session_socket_dir" ; then
1710 DBUS_SESSION_SOCKET_DIR="$with_session_socket_dir"
1712 DBUS_SESSION_SOCKET_DIR=$DEFAULT_SOCKET_DIR
1714 AC_DEFINE_UNQUOTED(DBUS_SESSION_SOCKET_DIR, "$DBUS_SESSION_SOCKET_DIR", [Where per-session bus puts its sockets])
1715 AC_SUBST(DBUS_SESSION_SOCKET_DIR)
1717 # This must be a listening address. It doesn't necessarily need to be an
1718 # address you can connect to - it can be something vague like
1721 # The default varies by platform.
1722 AC_ARG_WITH([dbus_session_bus_listen_address],
1723 AS_HELP_STRING([--with-dbus-session-bus-listen-address=[ADDRESS]],
1724 [default address for a session bus to listen on (see configure.ac)]),
1725 [with_dbus_session_bus_listen_address=$withval],
1726 [with_dbus_session_bus_listen_address=])
1728 if test "x$with_dbus_session_bus_listen_address" != "x"; then
1729 # the user specified something, trust them
1730 DBUS_SESSION_BUS_LISTEN_ADDRESS="$with_dbus_session_bus_listen_address"
1731 elif test x$dbus_win = xyes; then
1732 # On Windows, you can (and should) listen on autolaunch addresses,
1733 # because autolaunching is different.
1734 # See https://bugs.freedesktop.org/show_bug.cgi?id=38201
1735 DBUS_SESSION_BUS_LISTEN_ADDRESS="autolaunch:"
1736 elif test x$have_launchd = xyes; then
1737 # Mac OS X default is to use launchd
1738 DBUS_SESSION_BUS_LISTEN_ADDRESS="launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET"
1740 # The default on all other Unix platforms (notably Linux)
1741 # is to create a randomly named socket in /tmp or similar
1742 DBUS_SESSION_BUS_LISTEN_ADDRESS="unix:tmpdir=$DBUS_SESSION_SOCKET_DIR"
1744 AC_SUBST([DBUS_SESSION_BUS_LISTEN_ADDRESS])
1746 # This must be an address you can connect to. It doesn't necessarily
1747 # need to be an address you can listen on - it can be "autolaunch:",
1750 # The default varies by platform.
1751 AC_ARG_WITH([dbus_session_bus_connect_address],
1752 AS_HELP_STRING([--with-dbus-session-bus-connect-address=[ADDRESS]],
1753 [fallback address for a session bus client to connect to (see configure.ac)]),
1754 [with_dbus_session_bus_connect_address=$withval],
1755 [with_dbus_session_bus_connect_address=])
1757 if test "x$with_dbus_session_bus_connect_address" != "x"; then
1758 # the user specified something, trust them
1759 DBUS_SESSION_BUS_CONNECT_ADDRESS="$with_dbus_session_bus_connect_address"
1760 elif test x$dbus_win = xyes; then
1761 # Windows autolaunching is a bit different; leaving it in its own
1762 # branch of the conditional because the default might conceivably
1763 # change (see #38201)
1764 DBUS_SESSION_BUS_CONNECT_ADDRESS="autolaunch:"
1766 # The default on all other Unix platforms (notably Linux)
1767 # is to use auto-launching - this works a bit differently on Mac OS X
1768 # but comes out basically the same in the end
1769 DBUS_SESSION_BUS_CONNECT_ADDRESS="autolaunch:"
1771 AC_SUBST([DBUS_SESSION_BUS_CONNECT_ADDRESS])
1772 AC_DEFINE_UNQUOTED([DBUS_SESSION_BUS_CONNECT_ADDRESS],
1773 ["$DBUS_SESSION_BUS_CONNECT_ADDRESS"],
1774 [Fallback address for session bus clients])
1776 # darwin needs this to initialize the environment
1777 AC_CHECK_HEADERS(crt_externs.h)
1778 AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])])
1779 AH_VERBATIM(_DARWIN_ENVIRON,
1781 #if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
1782 # include <sys/time.h>
1783 # include <crt_externs.h>
1784 # define environ (*_NSGetEnviron())
1788 AC_ARG_ENABLE([stats],
1789 [AS_HELP_STRING([--enable-stats],
1790 [enable bus daemon usage statistics])],
1791 [], [enable_stats=no])
1792 if test "x$enable_stats" = xyes; then
1793 AC_DEFINE([DBUS_ENABLE_STATS], [1],
1794 [Define to enable bus daemon usage statistics])
1800 dbus/dbus-arch-deps.h
1804 bus/messagebus-config
1805 bus/org.freedesktop.dbus-session.plist
1814 test/name-test/Makefile
1816 doc/dbus-cleanup-sockets.1.xml
1817 doc/dbus-daemon.1.xml
1818 doc/dbus-launch.1.xml
1819 doc/dbus-monitor.1.xml
1821 doc/dbus-uuidgen.1.xml
1823 dbus-1-uninstalled.pc
1824 test/data/valid-config-files/debug-allow-all.conf
1825 test/data/valid-config-files/debug-allow-all-sha1.conf
1826 test/data/valid-config-files-system/debug-allow-all-pass.conf
1827 test/data/valid-config-files-system/debug-allow-all-fail.conf
1828 test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service
1829 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service
1830 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteForkingEchoService.service
1831 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service
1832 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
1833 test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
1834 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteEchoService.service
1835 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service
1836 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
1837 test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
1838 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service
1839 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service
1840 test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service
1844 dnl ==========================================================================
1849 prefix: ${EXPANDED_PREFIX}
1850 exec_prefix: ${exec_prefix}
1851 libdir: ${EXPANDED_LIBDIR}
1852 libexecdir: ${EXPANDED_LIBEXECDIR}
1853 bindir: ${EXPANDED_BINDIR}
1854 sysconfdir: ${EXPANDED_SYSCONFDIR}
1855 localstatedir: ${EXPANDED_LOCALSTATEDIR}
1856 datadir: ${EXPANDED_DATADIR}
1857 source code location: ${srcdir}
1860 cppflags: ${CPPFLAGS}
1861 cxxflags: ${CXXFLAGS}
1862 64-bit int: ${DBUS_INT64_TYPE}
1863 32-bit int: ${DBUS_INT32_TYPE}
1864 16-bit int: ${DBUS_INT16_TYPE}
1865 Doxygen: ${DOXYGEN:-not found}
1866 xmlto: ${XMLTO:-not found}"
1869 Rebuilding generated files: ${USE_MAINTAINER_MODE}
1870 gcc coverage profiling: ${enable_compiler_coverage}
1871 Building embedded tests: ${enable_embedded_tests}
1872 Building modular tests: ${enable_modular_tests}
1873 - with GLib: ${with_glib}
1874 Building verbose mode: ${enable_verbose_mode}
1875 Building assertions: ${enable_asserts}
1876 Building checks: ${enable_checks}
1877 Building bus stats API: ${enable_stats}
1878 Building SELinux support: ${have_selinux}
1879 Building inotify support: ${have_inotify}
1880 Building dnotify support: ${have_dnotify}
1881 Building kqueue support: ${have_kqueue}
1882 Building systemd support: ${have_systemd}
1883 Building X11 code: ${enable_x11}
1884 Building Doxygen docs: ${enable_doxygen_docs}
1885 Building XML docs: ${enable_xml_docs}
1886 Building cache support: ${enable_userdb_cache}
1887 Building launchd support: ${have_launchd}
1888 Using XML parser: ${with_xml}
1889 Init scripts style: ${with_init_scripts}
1890 Abstract socket names: ${ac_cv_have_abstract_sockets}
1891 System bus socket: ${DBUS_SYSTEM_SOCKET}
1892 System bus address: ${DBUS_SYSTEM_BUS_DEFAULT_ADDRESS}
1893 System bus PID file: ${DBUS_SYSTEM_PID_FILE}
1894 Session bus listens on: ${DBUS_SESSION_BUS_LISTEN_ADDRESS}
1895 Session clients connect to: ${DBUS_SESSION_BUS_CONNECT_ADDRESS}
1896 Console auth dir: ${DBUS_CONSOLE_AUTH_DIR}
1897 Console owner file: ${have_console_owner_file}
1898 Console owner file path: ${DBUS_CONSOLE_OWNER_FILE}
1899 System bus user: ${DBUS_USER}
1900 Session bus services dir: ${EXPANDED_DATADIR}/dbus-1/services
1901 'make check' socket dir: ${TEST_SOCKET_DIR}
1903 if test x$have_launchd = xyes; then
1904 echo " launchd agent dir: ${LAUNCHD_AGENT_DIR}"
1908 if test x$enable_embedded_tests = xyes; then
1909 echo "NOTE: building with unit tests increases the size of the installed library and renders it insecure."
1911 if test x$enable_embedded_tests = xyes -a x$enable_asserts = xno; then
1912 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)"
1914 if test x$enable_compiler_coverage = xyes; then
1915 echo "NOTE: building with coverage profiling is definitely for developers only."
1917 if test x$enable_verbose_mode = xyes; then
1918 echo "NOTE: building with verbose mode increases library size, may slightly increase security risk, and decreases performance."
1920 if test x$enable_asserts = xyes; then
1921 echo "NOTE: building with assertions increases library size and decreases performance."
1923 if test x$enable_checks = xno; then
1924 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."
1926 if test x$dbus_use_libxml = xtrue; then
1928 echo "WARNING: You have chosen to use libxml as your xml parser however this code path is not maintained by the D-Bus developers and if it breaks you get to keep the pieces. If you have selected this option in err please reconfigure with expat (e.g. --with-xml=expat)."
1931 if test "x$DBUS_HAVE_INT64" = x0; then
1932 AC_MSG_WARN([You have disabled 64-bit integers via --without-64-bit.
1934 This removes parts of the standard D-Bus API and ABI (the 't' and 'x'
1935 typecodes, the dbus_int64_t and dbus_uint64_t types, etc.) and should only be
1936 used if your compiler lacks support for 64-bit integers. Please report a bug
1937 with details of your platform and compiler.
1939 This option is likely to be removed in future, unless the D-Bus developers
1940 receive reports that it is still needed.