1dnl -*- mode: m4 -*- 2AC_PREREQ(2.52) 3 4m4_define([dbus_major_version], [1]) 5m4_define([dbus_minor_version], [4]) 6m4_define([dbus_micro_version], [0]) 7m4_define([dbus_version], 8 [dbus_major_version.dbus_minor_version.dbus_micro_version]) 9AC_INIT(dbus, [dbus_version]) 10 11AC_CANONICAL_HOST 12AC_LIBTOOL_WIN32_DLL 13AC_LIBTOOL_RC 14 15AM_INIT_AUTOMAKE([1.9 tar-ustar]) 16AM_CONFIG_HEADER(config.h) 17 18# Honor aclocal flags 19ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" 20 21GETTEXT_PACKAGE=dbus-1 22AC_SUBST(GETTEXT_PACKAGE) 23AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[The name of the gettext domain]) 24 25 ## must come before we use the $USE_MAINTAINER_MODE variable later 26AM_MAINTAINER_MODE 27 28m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) 29 30AC_DEFINE_UNQUOTED(DBUS_DAEMON_NAME,"dbus-daemon",[Name of executable]) 31 32# libtool versioning - this applies to libdbus 33# 34# See http://sources.redhat.com/autobook/autobook/autobook_91.html#SEC91 for details 35# 36 37## increment if the interface has additions, changes, removals. 38LT_CURRENT=8 39 40## increment any time the source changes; set to 41## 0 if you increment CURRENT 42LT_REVISION=2 43 44## increment if any interfaces have been added; set to 0 45## if any interfaces have been changed or removed. removal has 46## precedence over adding, so set to 0 if both happened. 47LT_AGE=5 48 49AC_SUBST(LT_CURRENT) 50AC_SUBST(LT_REVISION) 51AC_SUBST(LT_AGE) 52 53DBUS_MAJOR_VERSION=dbus_major_version 54DBUS_MINOR_VERSION=dbus_minor_version 55DBUS_MICRO_VERSION=dbus_micro_version 56DBUS_VERSION=dbus_major_version.dbus_minor_version.dbus_micro_version 57 58AC_SUBST(DBUS_MAJOR_VERSION) 59AC_SUBST(DBUS_MINOR_VERSION) 60AC_SUBST(DBUS_MICRO_VERSION) 61AC_SUBST(DBUS_VERSION) 62 63AC_PROG_CC 64AM_PROG_CC_C_O 65AC_PROG_CXX 66AC_USE_SYSTEM_EXTENSIONS 67AC_ISC_POSIX 68AC_HEADER_STDC 69AC_C_INLINE 70AM_PROG_LIBTOOL 71AC_PROG_MKDIR_P 72 73# Set some internal variables depending on the platform for later use. 74dbus_win=no 75dbus_cygwin=no 76dbus_unix=no 77case "${host}" in 78 *-mingw32ce*) 79 dbus_win=yes 80 dbus_wince=yes 81 ;; 82 *-mingw32*) 83 dbus_win=yes 84 ;; 85 *-cygwin*) 86 dbus_cygwin=yes 87 dbus_unix=yes 88 ;; 89 *) 90 dbus_unix=yes 91 ;; 92esac 93 94# Special defines for certain platforms 95if test "$dbus_win" = yes; then 96 AC_DEFINE(DBUS_WIN,1,[Defined if we run on a W32 API based system]) 97 BUILD_TIMESTAMP=`date --iso-8601=minutes` 98 AC_SUBST(BUILD_TIMESTAMP) 99 # Assume DBUS_VERSION is always three numbers 100 BUILD_FILEVERSION=`echo "$DBUS_VERSION" | sed -e 's/\./,/g'`,0 101 AC_SUBST(BUILD_FILEVERSION) 102 AC_CHECK_TOOL(WINDRES, windres, no) 103 if test "$WINDRES" = no; then 104 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.]) 105 fi 106 if test "$dbus_wince" = yes; then 107 AC_DEFINE(DBUS_WINCE,1,[Defined if we run on a W32 CE API based system]) 108 AC_DEFINE(_WIN32_WCE, 0x0502, [Defined to get newer W32 CE APIs]) 109 fi 110else 111 AC_DEFINE(DBUS_UNIX,1,[Defined if we run on a Unix-based system]) 112fi 113if test "$dbus_cygwin" = yes; then 114 AC_DEFINE(DBUS_CYGWIN,1,[Defined if we run on a cygwin API based system]) 115fi 116 117AM_CONDITIONAL(DBUS_WIN, test "$dbus_win" = yes) 118AM_CONDITIONAL(DBUS_WINCE, test "$dbus_wince" = yes) 119AM_CONDITIONAL(DBUS_UNIX, test "$dbus_unix" = yes) 120AM_CONDITIONAL(DBUS_CYGWIN, test "$dbus_cygwin" = yes) 121 122AC_ARG_ENABLE(tests, AS_HELP_STRING([--enable-tests],[enable unit test code]),enable_tests=$enableval,enable_tests=$USE_MAINTAINER_MODE) 123AC_ARG_ENABLE(ansi, AS_HELP_STRING([--enable-ansi],[enable -ansi -pedantic gcc flags]),enable_ansi=$enableval,enable_ansi=no) 124AC_ARG_ENABLE(verbose-mode, AS_HELP_STRING([--enable-verbose-mode],[support verbose debug mode]),enable_verbose_mode=$enableval,enable_verbose_mode=$USE_MAINTAINER_MODE) 125AC_ARG_ENABLE(asserts, AS_HELP_STRING([--enable-asserts],[include assertion checks]),enable_asserts=$enableval,enable_asserts=$USE_MAINTAINER_MODE) 126AC_ARG_ENABLE(checks, AS_HELP_STRING([--enable-checks],[include sanity checks on public API]),enable_checks=$enableval,enable_checks=yes) 127AC_ARG_ENABLE(xml-docs, AS_HELP_STRING([--enable-xml-docs],[build XML documentation (requires xmlto)]),enable_xml_docs=$enableval,enable_xml_docs=auto) 128AC_ARG_ENABLE(doxygen-docs, AS_HELP_STRING([--enable-doxygen-docs],[build DOXYGEN documentation (requires Doxygen)]),enable_doxygen_docs=$enableval,enable_doxygen_docs=auto) 129AC_ARG_ENABLE(gcov, AS_HELP_STRING([--enable-gcov],[compile with coverage profiling instrumentation (gcc only)]),enable_gcov=$enableval,enable_gcov=no) 130AC_ARG_ENABLE(abstract-sockets, AS_HELP_STRING([--enable-abstract-sockets],[use abstract socket namespace (linux only)]),enable_abstract_sockets=$enableval,enable_abstract_sockets=auto) 131AC_ARG_ENABLE(selinux, AS_HELP_STRING([--enable-selinux],[build with SELinux support]),enable_selinux=$enableval,enable_selinux=auto) 132AC_ARG_ENABLE(libaudit,AS_HELP_STRING([--enable-libaudit],[build audit daemon support for SELinux]),enable_libaudit=$enableval,enable_libaudit=auto) 133AC_ARG_ENABLE(dnotify, AS_HELP_STRING([--enable-dnotify],[build with dnotify support (linux only)]),enable_dnotify=$enableval,enable_dnotify=auto) 134AC_ARG_ENABLE(inotify, AS_HELP_STRING([--enable-inotify],[build with inotify support (linux only)]),enable_inotify=$enableval,enable_inotify=auto) 135AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto) 136AC_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) 137AC_ARG_ENABLE(userdb-cache, AS_HELP_STRING([--enable-userdb-cache],[build with userdb-cache support]),enable_userdb_cache=$enableval,enable_userdb_cache=yes) 138 139AC_ARG_WITH(xml, AS_HELP_STRING([--with-xml=[libxml/expat]],[XML library to use])) 140AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install])) 141AC_ARG_WITH(session-socket-dir, AS_HELP_STRING([--with-session-socket-dir=[dirname]],[Where to put sockets for the per-login-session message bus])) 142AC_ARG_WITH(test-socket-dir, AS_HELP_STRING([--with-test-socket-dir=[dirname]],[Where to put sockets for make check])) 143AC_ARG_WITH(system-pid-file, AS_HELP_STRING([--with-system-pid-file=[pidfile]],[PID file for systemwide daemon])) 144AC_ARG_WITH(system-socket, AS_HELP_STRING([--with-system-socket=[filename]],[UNIX domain socket for systemwide daemon])) 145AC_ARG_WITH(console-auth-dir, AS_HELP_STRING([--with-console-auth-dir=[dirname]],[directory to check for console ownerhip])) 146AC_ARG_WITH(console-owner-file, AS_HELP_STRING([--with-console-owner-file=[filename]],[file whose owner determines current console owner])) 147AC_ARG_WITH(dbus_user, AS_HELP_STRING([--with-dbus-user=<user>],[User for running the DBUS daemon (messagebus)])) 148AC_ARG_WITH(dbus_daemondir, AS_HELP_STRING([--with-dbus-daemondir=[dirname]],[Directory for installing the DBUS daemon])) 149 150dnl DBUS_BUILD_TESTS controls unit tests built in to .c files 151dnl and also some stuff in the test/ subdir 152AM_CONDITIONAL(DBUS_BUILD_TESTS, test x$enable_tests = xyes) 153if test x$enable_tests = xyes; then 154 AC_DEFINE(DBUS_BUILD_TESTS,1,[Build test code]) 155fi 156 157if test x$enable_verbose_mode = xyes; then 158 AC_DEFINE(DBUS_ENABLE_VERBOSE_MODE,1,[Support a verbose mode]) 159fi 160 161if test x$enable_asserts = xno; then 162 AC_DEFINE(DBUS_DISABLE_ASSERT,1,[Disable assertion checking]) 163 AC_DEFINE(G_DISABLE_ASSERT,1,[Disable GLib assertion macros]) 164 R_DYNAMIC_LDFLAG="" 165else 166 # -rdynamic is needed for glibc's backtrace_symbols to work. 167 # No clue how much overhead this adds, but it's useful 168 # to do this on any assertion failure, 169 # so for now it's enabled anytime asserts are (currently not 170 # in production builds). 171 172 # To get -rdynamic you pass -export-dynamic to libtool. 173 AC_DEFINE(DBUS_BUILT_R_DYNAMIC,1,[whether -export-dynamic was passed to libtool]) 174 R_DYNAMIC_LDFLAG=-export-dynamic 175fi 176AC_SUBST(R_DYNAMIC_LDFLAG) 177 178if test x$enable_checks = xno; then 179 AC_DEFINE(DBUS_DISABLE_CHECKS,1,[Disable public API sanity checking]) 180 AC_DEFINE(G_DISABLE_CHECKS,1,[Disable GLib public API sanity checking]) 181fi 182 183if test x$enable_userdb_cache = xyes; then 184 AC_DEFINE(DBUS_ENABLE_USERDB_CACHE,1,[Build with caching of user data]) 185fi 186 187if test x$enable_gcov = xyes; then 188 ## so that config.h changes when you toggle gcov support 189 AC_DEFINE_UNQUOTED(DBUS_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing]) 190 191 AC_MSG_CHECKING([for gcc 3.3 version of gcov file format]) 192 have_gcc33_gcov=no 193 AC_RUN_IFELSE( [AC_LANG_PROGRAM( , [[ if (__GNUC__ >=3 && __GNUC_MINOR__ >= 3) exit (0); else exit (1); ]])], 194 have_gcc33_gcov=yes) 195 if test x$have_gcc33_gcov = xyes ; then 196 AC_DEFINE_UNQUOTED(DBUS_HAVE_GCC33_GCOV, 1, [Defined if we have gcc 3.3 and thus the new gcov format]) 197 fi 198 AC_MSG_RESULT($have_gcc33_gcov) 199fi 200AM_CONDITIONAL(DBUS_GCOV_ENABLED, test x$enable_gcov = xyes) 201 202# glibc21.m4 serial 3 203dnl Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc. 204dnl This file is free software; the Free Software Foundation 205dnl gives unlimited permission to copy and/or distribute it, 206dnl with or without modifications, as long as this notice is preserved. 207 208# Test for the GNU C Library, version 2.1 or newer. 209# From Bruno Haible. 210 211AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, 212 ac_cv_gnu_library_2_1, 213 [AC_EGREP_CPP([Lucky GNU user], 214 [ 215#include <features.h> 216#ifdef __GNU_LIBRARY__ 217 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) 218 Lucky GNU user 219 #endif 220#endif 221 ], 222 ac_cv_gnu_library_2_1=yes, 223 ac_cv_gnu_library_2_1=no) 224 ] 225) 226 227#### Integer sizes 228 229AC_CHECK_SIZEOF(char) 230AC_CHECK_SIZEOF(short) 231AC_CHECK_SIZEOF(long) 232AC_CHECK_SIZEOF(int) 233AC_CHECK_SIZEOF(void *) 234AC_CHECK_SIZEOF(long long) 235AC_CHECK_SIZEOF(__int64) 236 237### See what our 64 bit type is called 238AC_MSG_CHECKING([64-bit integer type]) 239 240case 8 in 241$ac_cv_sizeof_int) 242 dbusint64=int 243 dbusint64_constant='(val)' 244 dbusuint64_constant='(val)' 245 dbusint64_printf_modifier='""' 246 ;; 247$ac_cv_sizeof_long) 248 dbusint64=long 249 dbusint64_constant='(val##L)' 250 dbusuint64_constant='(val##UL)' 251 dbusint64_printf_modifier='"l"' 252 ;; 253$ac_cv_sizeof_long_long) 254 dbusint64='long long' 255 dbusint64_constant='(val##LL)' 256 dbusuint64_constant='(val##ULL)' 257 # Ideally we discover what the format is, but this is 258 # only used in verbose mode, so eh... 259 if test x"$ac_cv_gnu_library_2_1" = xyes; then 260 dbusint64_printf_modifier='"ll"' 261 fi 262 ;; 263$ac_cv_sizeof___int64) 264 dbusint64=__int64 265 dbusint64_constant='(val##i64)' 266 dbusuint64_constant='(val##ui64)' 267 # See above case 268 if test x"$ac_cv_gnu_library_2_1" = xyes; then 269 dbusint64_printf_modifier='"ll"' 270 fi 271 ;; 272esac 273 274if test -z "$dbusint64" ; then 275 DBUS_INT64_TYPE="no_int64_type_detected" 276 DBUS_HAVE_INT64=0 277 DBUS_INT64_CONSTANT= 278 DBUS_UINT64_CONSTANT= 279 AC_MSG_RESULT([none found]) 280else 281 DBUS_INT64_TYPE="$dbusint64" 282 DBUS_HAVE_INT64=1 283 DBUS_INT64_CONSTANT="$dbusint64_constant" 284 DBUS_UINT64_CONSTANT="$dbusuint64_constant" 285 if test x"$dbusint64_printf_modifier" != x; then 286 AC_DEFINE_UNQUOTED(DBUS_INT64_PRINTF_MODIFIER, [$dbusint64_printf_modifier], [Define to printf modifier for 64 bit integer type]) 287 fi 288 AC_MSG_RESULT($DBUS_INT64_TYPE) 289fi 290 291AC_SUBST(DBUS_INT64_TYPE) 292AC_SUBST(DBUS_INT64_CONSTANT) 293AC_SUBST(DBUS_UINT64_CONSTANT) 294AC_SUBST(DBUS_HAVE_INT64) 295 296### see what 32-bit int is called 297AC_MSG_CHECKING([32-bit integer type]) 298 299case 4 in 300$ac_cv_sizeof_short) 301 dbusint32=int 302 ;; 303$ac_cv_sizeof_int) 304 dbusint32=int 305 ;; 306$ac_cv_sizeof_long) 307 dbusint32=long 308 ;; 309esac 310 311if test -z "$dbusint32" ; then 312 DBUS_INT32_TYPE="no_int32_type_detected" 313 AC_MSG_ERROR([No 32-bit integer type found]) 314else 315 DBUS_INT32_TYPE="$dbusint32" 316 AC_MSG_RESULT($DBUS_INT32_TYPE) 317fi 318 319AC_SUBST(DBUS_INT32_TYPE) 320 321### see what 16-bit int is called 322AC_MSG_CHECKING([16-bit integer type]) 323 324case 2 in 325$ac_cv_sizeof_short) 326 dbusint16=short 327 ;; 328$ac_cv_sizeof_int) 329 dbusint16=int 330 ;; 331esac 332 333if test -z "$dbusint16" ; then 334 DBUS_INT16_TYPE="no_int16_type_detected" 335 AC_MSG_ERROR([No 16-bit integer type found]) 336else 337 DBUS_INT16_TYPE="$dbusint16" 338 AC_MSG_RESULT($DBUS_INT16_TYPE) 339fi 340 341AC_SUBST(DBUS_INT16_TYPE) 342 343## byte order 344case $host_os in 345 darwin*) 346 # check at compile-time, so that it is possible to build universal 347 # (with multiple architectures at once on the compile line) 348 AH_VERBATIM([WORDS_BIGENDIAN_DARWIN], [ 349 /* Use the compiler-provided endianness defines to allow universal compiling. */ 350 #if defined(__BIG_ENDIAN__) 351 #define WORDS_BIGENDIAN 1 352 #endif 353 ]) 354 ;; 355 *) 356 AC_C_BIGENDIAN 357 ;; 358esac 359 360dnl ********************************** 361dnl *** va_copy checks (from GLib) *** 362dnl ********************************** 363dnl we currently check for all three va_copy possibilities, so we get 364dnl all results in config.log for bug reports. 365AC_CACHE_CHECK([for an implementation of va_copy()],dbus_cv_va_copy,[ 366 AC_LINK_IFELSE([#include <stdarg.h> 367#include <stdlib.h> 368 static void f (int i, ...) { 369 va_list args1, args2; 370 va_start (args1, i); 371 va_copy (args2, args1); 372 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) 373 exit (1); 374 va_end (args1); va_end (args2); 375 } 376 int main() { 377 f (0, 42); 378 return 0; 379 }], 380 [dbus_cv_va_copy=yes], 381 [dbus_cv_va_copy=no]) 382]) 383AC_CACHE_CHECK([for an implementation of __va_copy()],dbus_cv___va_copy,[ 384 AC_LINK_IFELSE([#include <stdarg.h> 385#include <stdlib.h> 386 static void f (int i, ...) { 387 va_list args1, args2; 388 va_start (args1, i); 389 __va_copy (args2, args1); 390 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) 391 exit (1); 392 va_end (args1); va_end (args2); 393 } 394 int main() { 395 f (0, 42); 396 return 0; 397 }], 398 [dbus_cv___va_copy=yes], 399 [dbus_cv___va_copy=no]) 400]) 401 402if test "x$dbus_cv_va_copy" = "xyes"; then 403 dbus_va_copy_func=va_copy 404else if test "x$dbus_cv___va_copy" = "xyes"; then 405 dbus_va_copy_func=__va_copy 406fi 407fi 408 409if test -n "$dbus_va_copy_func"; then 410 AC_DEFINE_UNQUOTED(DBUS_VA_COPY,$dbus_va_copy_func,[A 'va_copy' style function]) 411fi 412 413AC_LANG_PUSH(C) 414AC_CACHE_CHECK([whether va_lists can be copied by value], 415 dbus_cv_va_val_copy, 416 [AC_RUN_IFELSE([AC_LANG_PROGRAM( 417[[ 418 #include <stdarg.h> 419 #include <stdlib.h> 420]], 421[[ 422 static void f (int i, ...) { 423 va_list args1, args2; 424 va_start (args1, i); 425 args2 = args1; 426 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) 427 exit (1); 428 va_end (args1); va_end (args2); 429 } 430 int main() { 431 f (0, 42); 432 return 0; 433 } 434]])], 435 [dbus_cv_va_val_copy=yes], 436 [dbus_cv_va_val_copy=no], 437 [dbus_cv_va_val_copy=yes]) 438]) 439AC_LANG_POP(C) 440 441if test "x$dbus_cv_va_val_copy" = "xno"; then 442 AC_DEFINE(DBUS_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values]) 443fi 444 445 446#### Atomic integers 447 448AC_CACHE_CHECK([whether $CC knows __sync_sub_and_fetch()], 449 dbus_cv_sync_sub_and_fetch, 450 [AC_LINK_IFELSE( 451 AC_LANG_PROGRAM([], [[int a = 4; int b = __sync_sub_and_fetch(&a, 4); exit(b); ]]), 452 [dbus_cv_sync_sub_and_fetch=yes], 453 [dbus_cv_sync_sub_and_fetch=no]) 454 ]) 455 456if test "x$dbus_cv_sync_sub_and_fetch" = "xyes" ; then 457 have_sync=1 458else 459 have_sync=0 460fi 461 462AC_DEFINE_UNQUOTED([DBUS_USE_SYNC], [$have_sync], [Use the gcc __sync extension]) 463 464#### Various functions 465AC_SEARCH_LIBS(socket,[socket network]) 466AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)]) 467 468AC_CHECK_FUNCS(vsnprintf vasprintf nanosleep usleep setenv clearenv unsetenv socketpair getgrouplist fpathconf setrlimit poll setlocale localeconv strtoll strtoull) 469 470#### Check for broken poll; taken from Glib's configure 471 472AC_MSG_CHECKING([for broken poll]) 473AC_RUN_IFELSE([AC_LANG_SOURCE([[ 474 #include <stdlib.h> 475 #include <fcntl.h> 476 #include <poll.h> 477 #ifdef HAVE_SYS_POLL_H 478 #include <sys/poll.h> 479 #endif 480 int main(void) { 481 struct pollfd fds[1]; 482 int fd; 483 fd = open("/dev/null", 1); 484 fds[0].fd = fd; 485 fds[0].events = POLLIN; 486 fds[0].revents = 0; 487 if (poll(fds, 1, 0) < 0 || (fds[0].revents & POLLNVAL) != 0) { 488 exit(1); /* Does not work for devices -- fail */ 489 } 490 exit(0); 491 }]])], 492 [broken_poll=no], 493 [broken_poll=yes 494 AC_DEFINE(BROKEN_POLL,1,[poll doesn't work on devices])], 495 [broken_poll="no (cross compiling)"]) 496AC_MSG_RESULT($broken_poll) 497 498AC_MSG_CHECKING(for dirfd) 499AC_TRY_LINK([ 500#include <sys/types.h> 501#include <dirent.h> 502],[ 503DIR *dirp; 504dirp = opendir("."); 505dirfd(dirp); 506closedir(dirp); 507], 508dbus_have_dirfd=yes, dbus_have_dirfd=no) 509AC_MSG_RESULT($dbus_have_dirfd) 510if test "$dbus_have_dirfd" = yes; then 511 AC_DEFINE(HAVE_DIRFD,1,[Have dirfd function]) 512else 513 AC_MSG_CHECKING(for DIR *dirp->dd_fd) 514 AC_TRY_LINK([ 515#include <sys/types.h> 516#include <dirent.h> 517 ],[ 518DIR *dirp; 519int fd; 520dirp = opendir("."); 521fd = dirp->dd_fd; 522closedir(dirp); 523 ], 524 dbus_have_ddfd=yes, dbus_have_ddfd=no) 525 AC_MSG_RESULT($dbus_have_ddfd) 526 if test "$dbus_have_ddfd" = yes; then 527 AC_DEFINE(HAVE_DDFD,1,[Have the ddfd member of DIR]) 528 fi 529fi 530 531AC_CHECK_HEADERS(dirent.h) 532 533AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)]) 534 535AC_CHECK_HEADERS(errno.h) 536 537AC_CHECK_HEADERS(signal.h) 538 539AC_CHECK_HEADERS(locale.h) 540 541AC_CHECK_HEADERS(byteswap.h) 542 543AC_CHECK_HEADERS(unistd.h) 544 545AC_CHECK_HEADERS(ws2tcpip.h) 546 547AC_CHECK_HEADERS(wspiapi.h) 548 549# Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris 550# 551case $host_os in 552 solaris*) 553 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS" ;; 554esac 555 556# checking for a posix version of getpwnam_r 557# if we are cross compiling and can not run the test 558# assume getpwnam_r is the posix version 559# it is up to the person cross compiling to change 560# this behavior if desired 561AC_LANG_PUSH(C) 562AC_CACHE_CHECK([for posix getpwnam_r], 563 ac_cv_func_posix_getpwnam_r, 564 [AC_RUN_IFELSE([AC_LANG_PROGRAM( 565[[ 566#include <errno.h> 567#include <pwd.h> 568]], 569[[ 570 char buffer[10000]; 571 struct passwd pwd, *pwptr = &pwd; 572 int error; 573 errno = 0; 574 error = getpwnam_r ("", &pwd, buffer, 575 sizeof (buffer), &pwptr); 576 return (error < 0 && errno == ENOSYS) 577 || error == ENOSYS; 578]])], 579 [ac_cv_func_posix_getpwnam_r=yes], 580 [ac_cv_func_posix_getpwnam_r=no], 581 [ac_cv_func_posix_getpwnam_r=yes] 582)]) 583AC_LANG_POP(C) 584 585if test "$ac_cv_func_posix_getpwnam_r" = yes; then 586 AC_DEFINE(HAVE_POSIX_GETPWNAM_R,1, 587 [Have POSIX function getpwnam_r]) 588else 589 AC_CACHE_CHECK([for nonposix getpwnam_r], 590 ac_cv_func_nonposix_getpwnam_r, 591 [AC_TRY_LINK([#include <pwd.h>], 592 [char buffer[10000]; 593 struct passwd pwd; 594 getpwnam_r ("", &pwd, buffer, 595 sizeof (buffer));], 596 [ac_cv_func_nonposix_getpwnam_r=yes], 597 [ac_cv_func_nonposix_getpwnam_r=no])]) 598 if test "$ac_cv_func_nonposix_getpwnam_r" = yes; then 599 AC_DEFINE(HAVE_NONPOSIX_GETPWNAM_R,1, 600 [Have non-POSIX function getpwnam_r]) 601 fi 602fi 603 604dnl check for socklen_t 605AC_MSG_CHECKING(whether socklen_t is defined) 606AC_TRY_COMPILE([ 607#include <sys/types.h> 608#include <sys/socket.h> 609#include <netdb.h> 610],[ 611socklen_t foo; 612foo = 1; 613],dbus_have_socklen_t=yes,dbus_have_socklen_t=no) 614AC_MSG_RESULT($dbus_have_socklen_t) 615 616if test "x$dbus_have_socklen_t" = "xyes"; then 617 AC_DEFINE(HAVE_SOCKLEN_T,1,[Have socklen_t type]) 618fi 619 620dnl check for writev header and writev function so we're 621dnl good to go if HAVE_WRITEV gets defined. 622AC_CHECK_HEADERS(sys/uio.h, [AC_CHECK_FUNCS(writev)]) 623 624dnl needed on darwin for NAME_MAX 625AC_CHECK_HEADERS(sys/syslimits.h) 626 627dnl Make it easy to check if we have MSG_NOSIGNAL without actually having to include sys/socket.h 628AC_CHECK_DECLS([MSG_NOSIGNAL], [], [], [[ #include <sys/socket.h> ]]) 629 630dnl check for flavours of varargs macros (test from GLib) 631AC_MSG_CHECKING(for ISO C99 varargs macros in C) 632AC_TRY_COMPILE([],[ 633int a(int p1, int p2, int p3); 634#define call_a(...) a(1,__VA_ARGS__) 635call_a(2,3); 636],dbus_have_iso_c_varargs=yes,dbus_have_iso_c_varargs=no) 637AC_MSG_RESULT($dbus_have_iso_c_varargs) 638 639AC_MSG_CHECKING(for GNUC varargs macros) 640AC_TRY_COMPILE([],[ 641int a(int p1, int p2, int p3); 642#define call_a(params...) a(1,params) 643call_a(2,3); 644],dbus_have_gnuc_varargs=yes,dbus_have_gnuc_varargs=no) 645AC_MSG_RESULT($dbus_have_gnuc_varargs) 646 647dnl Output varargs tests 648if test x$dbus_have_iso_c_varargs = xyes; then 649 AC_DEFINE(HAVE_ISO_VARARGS,1,[Have ISO C99 varargs macros]) 650fi 651if test x$dbus_have_gnuc_varargs = xyes; then 652 AC_DEFINE(HAVE_GNUC_VARARGS,1,[Have GNU-style varargs macros]) 653fi 654 655dnl Check for various credentials. 656AC_MSG_CHECKING(for struct cmsgcred) 657AC_TRY_COMPILE([ 658#include <sys/types.h> 659#include <sys/socket.h> 660],[ 661struct cmsgcred cred; 662 663cred.cmcred_pid = 0; 664],dbus_have_struct_cmsgcred=yes,dbus_have_struct_cmsgcred=no) 665AC_MSG_RESULT($dbus_have_struct_cmsgcred) 666 667if test x$dbus_have_struct_cmsgcred = xyes; then 668 AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure]) 669fi 670 671AC_CHECK_FUNCS(getpeerucred getpeereid) 672 673AC_CHECK_FUNCS(pipe2 accept4) 674 675#### Abstract sockets 676 677if test x$enable_abstract_sockets = xauto; then 678AC_LANG_PUSH(C) 679warn_on_xcompile=no 680AC_CACHE_CHECK([abstract socket namespace], 681 ac_cv_have_abstract_sockets, 682 [AC_RUN_IFELSE([AC_LANG_PROGRAM( 683[[ 684#include <sys/types.h> 685#include <stdlib.h> 686#include <string.h> 687#include <stdio.h> 688#include <sys/socket.h> 689#include <sys/un.h> 690#include <errno.h> 691]], 692[[ 693 int listen_fd; 694 struct sockaddr_un addr; 695 696 listen_fd = socket (PF_UNIX, SOCK_STREAM, 0); 697 698 if (listen_fd < 0) 699 { 700 fprintf (stderr, "socket() failed: %s\n", strerror (errno)); 701 exit (1); 702 } 703 704 memset (&addr, '\0', sizeof (addr)); 705 addr.sun_family = AF_UNIX; 706 strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test"); 707 addr.sun_path[0] = '\0'; /* this is what makes it abstract */ 708 709 if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0) 710 { 711 fprintf (stderr, "Abstract socket namespace bind() failed: %s\n", 712 strerror (errno)); 713 exit (1); 714 } 715 else 716 exit (0); 717]])], 718 [ac_cv_have_abstract_sockets=yes], 719 [ac_cv_have_abstract_sockets=no], 720 [ 721 ac_cv_have_abstract_sockets=no 722 warn_on_xcompile=yes 723 ] 724)]) 725if test x$warn_on_xcompile = xyes ; then 726 AC_MSG_WARN([Cannot check for abstract sockets when cross-compiling, please use --enable-abstract-sockets]) 727fi 728AC_LANG_POP(C) 729fi 730 731if test x$enable_abstract_sockets = xyes; then 732 if test x$ac_cv_have_abstract_sockets = xno; then 733 AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.]) 734 fi 735fi 736 737if test x$enable_abstract_sockets = xno; then 738 ac_cv_have_abstract_sockets=no; 739fi 740 741if test x$ac_cv_have_abstract_sockets = xyes ; then 742 DBUS_PATH_OR_ABSTRACT=abstract 743 AC_DEFINE(HAVE_ABSTRACT_SOCKETS,1,[Have abstract socket namespace]) 744else 745 DBUS_PATH_OR_ABSTRACT=path 746fi 747 748# this is used in addresses to prefer abstract, e.g. 749# unix:path=/foo or unix:abstract=/foo 750AC_SUBST(DBUS_PATH_OR_ABSTRACT) 751 752PKG_PROG_PKG_CONFIG 753 754#### Sort out XML library 755 756# see what we have 757AC_CHECK_LIB(expat, XML_ParserCreate_MM, 758 [ AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false) ], 759 have_expat=false) 760 761# see what we want to use 762dbus_use_libxml=false 763dbus_use_expat=false 764if test x$with_xml = xexpat; then 765 if ! $have_expat ; then 766 AC_MSG_ERROR([Explicitly requested expat but expat not found]) 767 fi 768 dbus_use_expat=true 769elif test x$with_xml = xlibxml; then 770 PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= 2.6.0, have_libxml=true, have_libxml=false) 771 if ! $have_libxml ; then 772 AC_MSG_ERROR([Explicitly requested libxml but libxml not found]) 773 fi 774 dbus_use_libxml=true 775else 776 ### expat is the default because libxml can't currently survive 777 ### our brutal OOM-handling unit test setup. 778 ### http://bugzilla.gnome.org/show_bug.cgi?id=109368 779 if test x$have_expat = xfalse; then 780 AC_MSG_ERROR([Could not find expat.h, check config.log for failed attempts]) 781 fi 782 ### By default, only use Expat since it's tested and known to work. If you're a 783 ### general-purpose OS vendor, please don't enable libxml. For embedded use 784 ### if your OS is built around libxml, that's another case. 785 dbus_use_expat=true 786fi 787 788AM_CONDITIONAL(DBUS_USE_EXPAT, $dbus_use_expat) 789AM_CONDITIONAL(DBUS_USE_LIBXML, $dbus_use_libxml) 790 791if $dbus_use_expat; then 792 XML_LIBS=-lexpat 793 XML_CFLAGS= 794fi 795if $dbus_use_libxml; then 796 XML_LIBS=$LIBXML_LIBS 797 XML_CFLAGS=$LIBXML_CFLAGS 798fi 799 800# Thread lib detection 801AC_CHECK_FUNC(pthread_cond_timedwait,[AC_CHECK_LIB(pthread,pthread_cond_timedwait, 802 [THREAD_LIBS="-lpthread"])]) 803save_libs="$LIBS" 804LIBS="$LIBS $THREAD_LIBS" 805AC_CHECK_FUNC(pthread_condattr_setclock,have_pthread_condattr_setclock=true,have_pthread_condattr_setclock=false) 806if test x$have_pthread_condattr_setclock = xtrue; then 807 AC_SEARCH_LIBS([clock_getres],[rt],[THREAD_LIBS="$THREAD_LIBS -lrt"]) 808 AC_MSG_CHECKING([for CLOCK_MONOTONIC]) 809 AC_TRY_COMPILE([#include <time.h> 810#include <pthread.h> 811], [ 812struct timespec monotonic_timer; 813pthread_condattr_t attr; 814pthread_condattr_init (&attr); 815pthread_condattr_setclock (&attr, CLOCK_MONOTONIC); 816clock_getres (CLOCK_MONOTONIC,&monotonic_timer); 817], have_clock_monotonic=true, have_clock_monotonic=false) 818if test x$have_clock_monotonic = xtrue; then 819 AC_MSG_RESULT([found]) 820 AC_DEFINE(HAVE_MONOTONIC_CLOCK, 1, [Define if we have CLOCK_MONOTONIC]) 821else 822 AC_MSG_RESULT([not found]) 823fi 824fi 825LIBS="$save_libs" 826 827# SELinux detection 828if test x$enable_selinux = xno ; then 829 have_selinux=no; 830else 831 # See if we have SELinux library 832 AC_CHECK_LIB(selinux, is_selinux_enabled, 833 have_selinux=yes, have_selinux=no) 834 835 # see if we have the SELinux header with the new D-Bus stuff in it 836 if test x$have_selinux = xyes ; then 837 AC_MSG_CHECKING([for DBUS Flask permissions in selinux/av_permissions.h]) 838 AC_TRY_COMPILE([#include <selinux/av_permissions.h>], 839 [#ifdef DBUS__ACQUIRE_SVC return 0; 840 #else 841 #error DBUS__ACQUIRE_SVC not defined 842 #endif], 843 have_selinux=yes, have_selinux=no) 844 AC_MSG_RESULT($have_selinux) 845 fi 846 847 if test x$enable_selinux = xauto ; then 848 if test x$have_selinux = xno ; then 849 AC_MSG_WARN([Sufficiently new SELinux library not found]) 850 fi 851 else 852 if test x$have_selinux = xno ; then 853 AC_MSG_ERROR([SElinux explicitly required, and SELinux library not found]) 854 fi 855 fi 856fi 857 858AM_CONDITIONAL(HAVE_SELINUX, test x$have_selinux = xyes) 859 860if test x$have_selinux = xyes ; then 861 # the selinux code creates threads 862 # which requires libpthread even on linux 863 AC_CHECK_FUNC(pthread_create,,[AC_CHECK_LIB(pthread,pthread_create, 864 [SELINUX_THREAD_LIBS="-lpthread"])]) 865 866 SELINUX_LIBS="-lselinux $SELINUX_THREAD_LIBS" 867 AC_DEFINE(HAVE_SELINUX,1,[SELinux support]) 868else 869 SELINUX_LIBS= 870fi 871 872# inotify checks 873if test x$enable_inotify = xno ; then 874 have_inotify=no; 875else 876 AC_CHECK_HEADERS(sys/inotify.h, have_inotify=yes, have_inotify=no) 877fi 878 879dnl check if inotify backend is enabled 880if test x$have_inotify = xyes; then 881 AC_DEFINE(DBUS_BUS_ENABLE_INOTIFY,1,[Use inotify]) 882 AC_CHECK_FUNCS(inotify_init1) 883fi 884 885AM_CONDITIONAL(DBUS_BUS_ENABLE_INOTIFY, test x$have_inotify = xyes) 886 887# dnotify checks 888if test x$enable_dnotify = xno ; then 889 have_dnotify=no; 890else 891 if test x$have_inotify = xno -a x$host_os = xlinux-gnu -o x$host_os = xlinux; then 892 have_dnotify=yes; 893 else 894 have_dnotify=no; 895 fi 896fi 897 898dnl check if dnotify backend is enabled 899if test x$have_dnotify = xyes; then 900 AC_DEFINE(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX,1,[Use dnotify on Linux]) 901fi 902 903AM_CONDITIONAL(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX, test x$have_dnotify = xyes) 904 905# kqueue checks 906if test x$enable_kqueue = xno ; then 907 have_kqueue=no 908else 909 have_kqueue=yes 910 AC_CHECK_HEADER(sys/event.h, , have_kqueue=no) 911 AC_CHECK_FUNC(kqueue, , have_kqueue=no) 912 913 if test x$enable_kqueue = xyes -a x$have_kqueue = xno; then 914 AC_MSG_ERROR(kqueue support explicitly enabled but not available) 915 fi 916fi 917 918dnl check if kqueue backend is enabled 919if test x$have_kqueue = xyes; then 920 AC_DEFINE(DBUS_BUS_ENABLE_KQUEUE,1,[Use kqueue]) 921fi 922 923AM_CONDITIONAL(DBUS_BUS_ENABLE_KQUEUE, test x$have_kqueue = xyes) 924 925dnl console owner file 926if test x$enable_console_owner_file = xno ; then 927 have_console_owner_file=no; 928else 929 case $host_os in 930 solaris*) 931 have_console_owner_file=yes; 932 AC_DEFINE(HAVE_CONSOLE_OWNER_FILE,1,[Have console owner file]) 933 ;; 934 *) 935 have_console_owner_file=no;; 936 esac 937fi 938 939AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes) 940 941# libaudit detection 942if test x$enable_libaudit = xno ; then 943 have_libaudit=no; 944else 945 # See if we have audit daemon & capabilities library 946 AC_CHECK_LIB(audit, audit_log_user_avc_message, 947 have_libaudit=yes, have_libaudit=no) 948 if test x$have_libaudit = xyes ; then 949 AC_CHECK_LIB(cap-ng, capng_clear, 950 have_libaudit=yes, have_libaudit=no) 951 fi 952fi 953 954AM_CONDITIONAL(HAVE_LIBAUDIT, test x$have_libaudit = xyes) 955 956if test x$have_libaudit = xyes ; then 957 SELINUX_LIBS="$SELINUX_LIBS -laudit -lcap-ng" 958 AC_DEFINE(HAVE_LIBAUDIT,1,[audit daemon SELinux support]) 959fi 960 961# Check for ADT API 962AC_MSG_CHECKING(for ADT API) 963AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 964#include <bsm/adt.h> 965adt_user_context = ADT_USER; 966]], [[]])], [ check_adt_audit=yes ], [ check_adt_audit=no ]) 967 968if test ${check_adt_audit} = yes 969then 970 AC_DEFINE([HAVE_ADT], [], [Adt audit API]) 971 ADT_LIBS="-lbsm" 972 LIBS="-lbsm $LIBS" 973 AC_MSG_RESULT(yes) 974else 975 AC_MSG_RESULT(no) 976fi 977 978# Check for SCM_RIGHTS 979AC_MSG_CHECKING([for SCM_RIGHTS]) 980AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 981#include <sys/socket.h> 982#include <sys/un.h> 983static int x = SCM_RIGHTS; 984]], [[]])], 985[ AC_MSG_RESULT([supported]) 986 AC_DEFINE([HAVE_UNIX_FD_PASSING], [1], [Supports sending UNIX file descriptors]) ], 987[ AC_MSG_RESULT([not supported]) ]) 988 989NETWORK_libs= 990if test x$dbus_win = xyes ; then 991 if test x$dbus_wince = xyes ; then 992 NETWORK_libs="-lws2" 993 else 994 NETWORK_libs="-lws2_32" 995 fi 996fi 997 998#### Set up final flags 999DBUS_CLIENT_CFLAGS= 1000DBUS_CLIENT_LIBS="$THREAD_LIBS $NETWORK_libs" 1001AC_SUBST(DBUS_CLIENT_CFLAGS) 1002AC_SUBST(DBUS_CLIENT_LIBS) 1003 1004DBUS_BUS_CFLAGS="$XML_CFLAGS" 1005DBUS_BUS_LIBS="$XML_LIBS $SELINUX_LIBS $INTLLIBS $THREAD_LIBS $ADT_LIBS $NETWORK_libs" 1006AC_SUBST(DBUS_BUS_CFLAGS) 1007AC_SUBST(DBUS_BUS_LIBS) 1008 1009DBUS_LAUNCHER_CFLAGS="$XML_CFLAGS" 1010DBUS_LAUNCHER_LIBS="$XML_LIBS $THREAD_LIBS $NETWORK_libs" 1011AC_SUBST(DBUS_LAUNCHER_CFLAGS) 1012AC_SUBST(DBUS_LAUNCHER_LIBS) 1013 1014DBUS_TEST_CFLAGS= 1015DBUS_TEST_LIBS="$THREAD_LIBS $NETWORK_libs" 1016AC_SUBST(DBUS_TEST_CFLAGS) 1017AC_SUBST(DBUS_TEST_LIBS) 1018 1019### X11 detection 1020if test x$dbus_win = xyes ; then 1021 enable_x11=no 1022else 1023AC_PATH_XTRA 1024 1025## for now enable_x11 just tracks have_x11, 1026## there's no --enable-x11 1027if test x$no_x = xyes ; then 1028 have_x11=no 1029 enable_x11=no 1030else 1031 have_x11=yes 1032 enable_x11=yes 1033fi 1034 1035if test x$enable_x11 = xyes ; then 1036 AC_DEFINE(DBUS_BUILD_X11,1,[Build X11-dependent code]) 1037 DBUS_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS" 1038 DBUS_X_CFLAGS="$X_CFLAGS" 1039else 1040 DBUS_X_LIBS= 1041 DBUS_X_CFLAGS= 1042fi 1043 1044AC_SUBST(DBUS_X_CFLAGS) 1045AC_SUBST(DBUS_X_LIBS) 1046fi 1047 1048 1049#### gcc warning flags 1050 1051cc_supports_flag() { 1052 AC_MSG_CHECKING(whether $CC supports "$@") 1053 Cfile=/tmp/foo${$} 1054 touch ${Cfile}.c 1055 $CC -c "$@" ${Cfile}.c -o ${Cfile}.o >/dev/null 2>&1 1056 rc=$? 1057 rm -f ${Cfile}.c ${Cfile}.o 1058 case $rc in 1059 0) AC_MSG_RESULT(yes);; 1060 *) AC_MSG_RESULT(no);; 1061 esac 1062 return $rc 1063} 1064 1065ld_supports_flag() { 1066 AC_MSG_CHECKING([whether $LD supports "$@"]) 1067 AC_TRY_LINK([ 1068 int one(void) { return 1; } 1069 int two(void) { return 2; } 1070 ], [ two(); ] , [_ac_ld_flag_supported=yes], [_ac_ld_flag_supported=no]) 1071 1072 if test "$_ac_ld_flag_supported" = "yes"; then 1073 rm -f conftest.c 1074 touch conftest.c 1075 if $CC -c conftest.c; then 1076 ld_out=`$LD $@ -o conftest conftest.o 2>&1` 1077 ld_ret=$? 1078 if test $ld_ret -ne 0 ; then 1079 _ac_ld_flag_supported=no 1080 elif echo "$ld_out" | egrep 'option ignored|^usage:|unrecognized option|illegal option' >/dev/null ; then 1081 _ac_ld_flag_supported=no 1082 fi 1083 fi 1084 rm -f conftest.c conftest.o conftest 1085 fi 1086 1087 AC_MSG_RESULT($_ac_ld_flag_supported) 1088 if test "$_ac_ld_flag_supported" = "yes" ; then 1089 return 0 1090 else 1091 return 1 1092 fi 1093} 1094 1095# Don't bother with -Werror on Windows for now, too many warnings 1096if test x$dbus_win != xyes -a x$dbus_cygwin != xyes -a x$USE_MAINTAINER_MODE = xyes; then 1097 if cc_supports_flag "-Werror"; then 1098 CFLAGS="$CFLAGS -Werror" 1099 fi 1100fi 1101 1102if test "x$GCC" = "xyes"; then 1103 changequote(,)dnl 1104 case " $CFLAGS " in 1105 *[\ \ ]-Wall[\ \ ]*) ;; 1106 *) CFLAGS="$CFLAGS -Wall" ;; 1107 esac 1108 1109 case " $CFLAGS " in 1110 *[\ \ ]-Wchar-subscripts[\ \ ]*) ;; 1111 *) CFLAGS="$CFLAGS -Wchar-subscripts" ;; 1112 esac 1113 1114 case " $CFLAGS " in 1115 *[\ \ ]-Wmissing-declarations[\ \ ]*) ;; 1116 *) CFLAGS="$CFLAGS -Wmissing-declarations" ;; 1117 esac 1118 1119 case " $CFLAGS " in 1120 *[\ \ ]-Wmissing-prototypes[\ \ ]*) ;; 1121 *) CFLAGS="$CFLAGS -Wmissing-prototypes" ;; 1122 esac 1123 1124 case " $CFLAGS " in 1125 *[\ \ ]-Wnested-externs[\ \ ]*) ;; 1126 *) CFLAGS="$CFLAGS -Wnested-externs" ;; 1127 esac 1128 1129 case " $CFLAGS " in 1130 *[\ \ ]-Wpointer-arith[\ \ ]*) ;; 1131 *) CFLAGS="$CFLAGS -Wpointer-arith" ;; 1132 esac 1133 1134 case " $CFLAGS " in 1135 *[\ \ ]-Wcast-align[\ \ ]*) ;; 1136 *) CFLAGS="$CFLAGS -Wcast-align" ;; 1137 esac 1138 1139 case " $CFLAGS " in 1140 *[\ \ ]-Wfloat-equal[\ \ ]*) ;; 1141 *) if cc_supports_flag -Wfloat-equals; then 1142 CFLAGS="$CFLAGS -Wfloat-equal" 1143 fi 1144 ;; 1145 esac 1146 1147 case " $CFLAGS " in 1148 *[\ \ ]-Wdeclaration-after-statement[\ \ ]*) ;; 1149 *) if cc_supports_flag -Wdeclaration-after-statement; then 1150 CFLAGS="$CFLAGS -Wdeclaration-after-statement" 1151 fi 1152 ;; 1153 esac 1154 1155 case " $CFLAGS " in 1156 *[\ \ ]-fno-common[\ \ ]*) ;; 1157 *) if cc_supports_flag -fno-common; then 1158 CFLAGS="$CFLAGS -fno-common" 1159 fi 1160 ;; 1161 esac 1162 1163 case " $CFLAGS " in 1164 *[\ \ ]-fPIC[\ \ ]*) ;; 1165 *) if test x$dbus_win = xno && cc_supports_flag -fPIC; then 1166 PIC_CFLAGS="-fPIC" 1167 if ld_supports_flag -z,relro; then 1168 PIC_LDFLAGS="-Wl,-z,relro" 1169 fi 1170 fi 1171 ;; 1172 esac 1173 1174 case " $CFLAGS " in 1175 *[\ \ ]-fPIE[\ \ ]*) ;; 1176 *) if test x$dbus_win = xno && cc_supports_flag -fPIE; then 1177 PIE_CFLAGS="-fPIE" 1178 if ld_supports_flag -z,relro; then 1179 PIE_LDFLAGS="-pie -Wl,-z,relro" 1180 else 1181 PIE_LDFLAGS="-pie" 1182 fi 1183 fi 1184 ;; 1185 esac 1186 1187 ### Disabled warnings, and compiler flag overrides 1188 1189 # Let's just ignore unused for now 1190 case " $CFLAGS " in 1191 *[\ \ ]-Wno-unused[\ \ ]*) ;; 1192 *) CFLAGS="$CFLAGS -Wno-unused" ;; 1193 esac 1194 1195 # This group is for warnings we currently don't pass. 1196 # We would like to, however. Please fix. 1197 1198 # http://bugs.freedesktop.org/show_bug.cgi?id=17433 1199 case " $CFLAGS " in 1200 *[\ \ ]-Wno-sign-compare[\ \ ]*) ;; 1201 *) CFLAGS="$CFLAGS -Wno-sign-compare" ;; 1202 esac 1203 case " $CFLAGS " in 1204 *[\ \ ]-Wno-pointer-sign[\ \ ]*) ;; 1205 *) if cc_supports_flag -Wno-pointer-sign; then 1206 CFLAGS="$CFLAGS -Wno-pointer-sign" 1207 fi 1208 ;; 1209 esac 1210 1211 # This one is special - it's not a warning override. 1212 # http://bugs.freedesktop.org/show_bug.cgi?id=10599 1213 case " $CFLAGS " in 1214 *[\ \ ]-fno-strict-aliasing[\ \ ]*) ;; 1215 *) CFLAGS="$CFLAGS -fno-strict-aliasing" ;; 1216 esac 1217 ### End disabled warnings 1218 1219 if test "x$enable_ansi" = "xyes"; then 1220 case " $CFLAGS " in 1221 *[\ \ ]-ansi[\ \ ]*) ;; 1222 *) CFLAGS="$CFLAGS -ansi" ;; 1223 esac 1224 1225 case " $CFLAGS " in 1226 *[\ \ ]-D_POSIX_C_SOURCE*) ;; 1227 *) CFLAGS="$CFLAGS -D_POSIX_C_SOURCE=199309L" ;; 1228 esac 1229 1230 case " $CFLAGS " in 1231 *[\ \ ]-D_BSD_SOURCE[\ \ ]*) ;; 1232 *) CFLAGS="$CFLAGS -D_BSD_SOURCE" ;; 1233 esac 1234 1235 case " $CFLAGS " in 1236 *[\ \ ]-pedantic[\ \ ]*) ;; 1237 *) CFLAGS="$CFLAGS -pedantic" ;; 1238 esac 1239 fi 1240 if test x$enable_gcov = xyes; then 1241 case " $CFLAGS " in 1242 *[\ \ ]-fprofile-arcs[\ \ ]*) ;; 1243 *) CFLAGS="$CFLAGS -fprofile-arcs" ;; 1244 esac 1245 case " $CFLAGS " in 1246 *[\ \ ]-ftest-coverage[\ \ ]*) ;; 1247 *) CFLAGS="$CFLAGS -ftest-coverage" ;; 1248 esac 1249 1250 ## remove optimization 1251 CFLAGS=`echo "$CFLAGS" | sed -e 's/-O[0-9]*//g'` 1252 fi 1253 changequote([,])dnl 1254else 1255 if test x$enable_gcov = xyes; then 1256 AC_MSG_ERROR([--enable-gcov can only be used with gcc]) 1257 fi 1258fi 1259 1260AC_SUBST(PIC_CFLAGS) 1261AC_SUBST(PIC_LDFLAGS) 1262AC_SUBST(PIE_CFLAGS) 1263AC_SUBST(PIE_LDFLAGS) 1264 1265if ld_supports_flag --gc-sections; then 1266 SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS" 1267 CFLAGS="-ffunction-sections -fdata-sections $CFLAGS" 1268fi 1269AC_SUBST(SECTION_FLAGS) 1270AC_SUBST(SECTION_LDFLAGS) 1271AC_MSG_RESULT($ac_gcsections) 1272 1273# Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris 1274# 1275case $host_os in 1276 solaris*) 1277 CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS" ;; 1278esac 1279 1280changequote(,)dnl 1281# compress spaces in flags 1282CFLAGS=`echo "$CFLAGS" | sed -e 's/ +/ /g'` 1283CXXFLAGS=`echo "$CXXFLAGS" | sed -e 's/ +/ /g'` 1284CPPFLAGS=`echo "$CPPFLAGS" | sed -e 's/ +/ /g'` 1285changequote([,])dnl 1286 1287### Doxygen Documentation 1288 1289AC_PATH_PROG(DOXYGEN, doxygen, no) 1290 1291AC_MSG_CHECKING([whether to build Doxygen documentation]) 1292 1293if test x$DOXYGEN = xno ; then 1294 have_doxygen=no 1295else 1296 have_doxygen=yes 1297fi 1298 1299if test x$enable_doxygen_docs = xauto ; then 1300 if test x$have_doxygen = xno ; then 1301 enable_doxygen_docs=no 1302 else 1303 enable_doxygen_docs=yes 1304 fi 1305fi 1306 1307if test x$enable_doxygen_docs = xyes; then 1308 if test x$have_doxygen = xno; then 1309 AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found]) 1310 fi 1311fi 1312 1313AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test x$enable_doxygen_docs = xyes) 1314AC_MSG_RESULT(yes) 1315 1316### XML Documentation 1317 1318AC_PATH_PROG(XMLTO, xmlto, no) 1319 1320AC_MSG_CHECKING([whether to build XML documentation]) 1321 1322if test x$XMLTO = xno ; then 1323 have_xmlto=no 1324else 1325 have_xmlto=yes 1326fi 1327 1328if test x$enable_xml_docs = xauto ; then 1329 if test x$have_xmlto = xno ; then 1330 enable_xml_docs=no 1331 else 1332 enable_xml_docs=yes 1333 fi 1334fi 1335 1336if test x$enable_xml_docs = xyes; then 1337 if test x$have_xmlto = xno; then 1338 AC_MSG_ERROR([Building XML docs explicitly required, but xmlto not found]) 1339 fi 1340fi 1341 1342AM_CONDITIONAL(DBUS_XML_DOCS_ENABLED, test x$enable_xml_docs = xyes) 1343AC_MSG_RESULT(yes) 1344 1345#### Have to go $localstatedir->$prefix/var->/usr/local/var 1346 1347#### find the actual value for $prefix that we'll end up with 1348## (I know this is broken and should be done in the Makefile, but 1349## that's a major pain and almost nobody actually seems to care) 1350AS_AC_EXPAND(EXPANDED_PREFIX, "$prefix") 1351AS_AC_EXPAND(EXPANDED_LOCALSTATEDIR, "$localstatedir") 1352AS_AC_EXPAND(EXPANDED_SYSCONFDIR, "$sysconfdir") 1353AS_AC_EXPAND(EXPANDED_BINDIR, "$bindir") 1354AS_AC_EXPAND(EXPANDED_LIBDIR, "$libdir") 1355AS_AC_EXPAND(EXPANDED_LIBEXECDIR, "$libexecdir") 1356AS_AC_EXPAND(EXPANDED_DATADIR, "$datadir") 1357 1358#### Check our operating system 1359operating_system=unknown 1360if test -f /etc/redhat-release || test -f $EXPANDED_SYSCONFDIR/redhat-release ; then 1361 operating_system=redhat 1362fi 1363 1364if test -f /etc/slackware-version || test -f $EXPANDED_SYSCONFDIR/slackware-version ; then 1365 operating_system=slackware 1366fi 1367 1368if test -f /usr/bin/cygwin1.dll || test -f $EXPANDED_BINDIR/cygwin1.dll ; then 1369 operating_system=cygwin 1370fi 1371 1372#### Sort out init scripts 1373 1374if test x$with_init_scripts = x; then 1375 case x$operating_system in 1376 xredhat) with_init_scripts=redhat ;; 1377 xslackware) with_init_scripts=slackware ;; 1378 xcygwin) with_init_scripts=cygwin ;; 1379 *) with_init_scripts=none ;; 1380 esac 1381fi 1382 1383AM_CONDITIONAL(DBUS_INIT_SCRIPTS_RED_HAT, test x$with_init_scripts = xredhat) 1384AM_CONDITIONAL(DBUS_INIT_SCRIPTS_SLACKWARE, test x$with_init_scripts = xslackware) 1385AM_CONDITIONAL(DBUS_INIT_SCRIPTS_CYGWIN, test x$with_init_scripts = xcygwin) 1386 1387##### systemd unit files 1388AC_ARG_WITH([systemdsystemunitdir], 1389AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]), 1390 [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]) 1391if test "x$with_systemdsystemunitdir" != xno; then 1392 AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) 1393fi 1394AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ]) 1395 1396##### Set up location for system bus socket 1397if ! test -z "$with_system_socket"; then 1398 DBUS_SYSTEM_SOCKET=$with_system_socket 1399else 1400 DBUS_SYSTEM_SOCKET=${EXPANDED_LOCALSTATEDIR}/run/dbus/system_bus_socket 1401fi 1402 1403AC_SUBST(DBUS_SYSTEM_SOCKET) 1404AC_DEFINE_UNQUOTED(DBUS_SYSTEM_SOCKET,"$DBUS_SYSTEM_SOCKET",[The name of the socket the system bus listens on by default]) 1405 1406## system bus only listens on local domain sockets, and never 1407## on an abstract socket (so only root can create the socket) 1408DBUS_SYSTEM_BUS_DEFAULT_ADDRESS="unix:path=$DBUS_SYSTEM_SOCKET" 1409AC_SUBST(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS) 1410AC_DEFINE_UNQUOTED(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS, "$DBUS_SYSTEM_BUS_DEFAULT_ADDRESS",[The default D-Bus address of the system bus]) 1411 1412#### Set up the pid file 1413if ! test -z "$with_system_pid_file"; then 1414 DBUS_SYSTEM_PID_FILE=$with_system_pid_file 1415elif test x$with_init_scripts = xredhat ; then 1416 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/messagebus.pid 1417else 1418 DBUS_SYSTEM_PID_FILE=${EXPANDED_LOCALSTATEDIR}/run/dbus/pid 1419fi 1420 1421AC_SUBST(DBUS_SYSTEM_PID_FILE) 1422 1423#### Directory to check for console ownership 1424if ! test -z "$with_console_auth_dir"; then 1425 DBUS_CONSOLE_AUTH_DIR=$with_console_auth_dir 1426else 1427 DBUS_CONSOLE_AUTH_DIR=/var/run/console/ 1428fi 1429 1430AC_SUBST(DBUS_CONSOLE_AUTH_DIR) 1431AC_DEFINE_UNQUOTED(DBUS_CONSOLE_AUTH_DIR, "$DBUS_CONSOLE_AUTH_DIR", [Directory to check for console ownerhip]) 1432 1433#### File to check for console ownership 1434if test x$have_console_owner_file = xyes; then 1435 if ! test -z "$with_console_owner_file"; then 1436 DBUS_CONSOLE_OWNER_FILE=$with_console_owner_file 1437 else 1438 DBUS_CONSOLE_OWNER_FILE=/dev/console 1439 fi 1440else 1441 DBUS_CONSOLE_OWNER_FILE= 1442fi 1443 1444AC_SUBST(DBUS_CONSOLE_OWNER_FILE) 1445AC_DEFINE_UNQUOTED(DBUS_CONSOLE_OWNER_FILE, "$DBUS_CONSOLE_OWNER_FILE", [File to check for console ownerhip]) 1446 1447#### User to start the system bus as 1448if test -z "$with_dbus_user" ; then 1449 DBUS_USER=messagebus 1450else 1451 DBUS_USER=$with_dbus_user 1452fi 1453AC_SUBST(DBUS_USER) 1454AC_DEFINE_UNQUOTED(DBUS_USER,"$DBUS_USER", [User for running the system BUS daemon]) 1455 1456#### Prefix to install into 1457DBUS_PREFIX=$EXPANDED_PREFIX 1458AC_SUBST(DBUS_PREFIX) 1459AC_DEFINE_UNQUOTED(DBUS_PREFIX,"$DBUS_PREFIX", [Prefix for installing DBUS]) 1460 1461#### Direcotry to install data files into 1462DBUS_DATADIR=$EXPANDED_DATADIR 1463AC_SUBST(DBUS_DATADIR) 1464AC_DEFINE_UNQUOTED(DBUS_DATADIR,"$DBUS_DATADIR", [Directory for installing DBUS data files]) 1465 1466#### Directory to install dbus-daemon 1467if test -z "$with_dbus_daemondir" ; then 1468 DBUS_DAEMONDIR=$EXPANDED_BINDIR 1469else 1470 DBUS_DAEMONDIR=$with_dbus_daemondir 1471fi 1472AC_SUBST(DBUS_DAEMONDIR) 1473AC_DEFINE_UNQUOTED(DBUS_DAEMONDIR,"$DBUS_DAEMONDIR", [Directory for installing the DBUS daemon]) 1474 1475#### Directory to install the other binaries 1476DBUS_BINDIR="$EXPANDED_BINDIR" 1477AC_SUBST(DBUS_BINDIR) 1478AC_DEFINE_UNQUOTED(DBUS_BINDIR,"$DBUS_BINDIR", [Directory for installing the binaries]) 1479 1480#### Directory to install the libexec binaries 1481DBUS_LIBEXECDIR="$EXPANDED_LIBEXECDIR" 1482AC_SUBST(DBUS_LIBEXECDIR) 1483AC_DEFINE_UNQUOTED(DBUS_LIBEXECDIR,"$DBUS_LIBEXECDIR", [Directory for installing the libexec binaries]) 1484 1485#### Tell tests where to find certain stuff in builddir 1486 1487DBUS_PWD=`pwd` 1488# Useful in a cross-compilation environment, where the tests are run on the host system. 1489AC_ARG_WITH(dbus-test-dir, AS_HELP_STRING([--with-dbus-test-dir=[dirname]],[path where the tests tools are available]), 1490 DBUS_PWD=$withval) 1491AC_DEFUN([TEST_PATH], [ 1492TEST_$1=${DBUS_PWD}/test/$2 1493AC_DEFINE_UNQUOTED(TEST_$1, "$TEST_$1", 1494 [Full path to test file test/$2 in builddir]) 1495AC_SUBST(TEST_$1) 1496]) 1497AC_DEFUN([TEST_PROG], [ 1498TEST_$1=${DBUS_PWD}/test/$2 1499AC_DEFINE_UNQUOTED(TEST_$1, "$TEST_$1$EXEEXT", 1500 [Full path to test file test/$2 in builddir]) 1501AC_SUBST(TEST_$1) 1502]) 1503 1504TEST_PATH(VALID_SERVICE_DIR, data/valid-service-files) 1505TEST_PATH(INVALID_SERVICE_DIR, data/invalid-service-files) 1506TEST_PATH(VALID_SERVICE_SYSTEM_DIR, data/valid-service-files-system) 1507TEST_PATH(INVALID_SERVICE_SYSTEM_DIR, data/invalid-service-files-system) 1508TEST_PROG(SERVICE_BINARY, test-service) 1509TEST_PROG(SHELL_SERVICE_BINARY, test-shell-service) 1510TEST_PROG(EXIT_BINARY, test-exit) 1511TEST_PROG(SEGFAULT_BINARY, test-segfault) 1512TEST_PROG(SLEEP_FOREVER_BINARY, test-sleep-forever) 1513TEST_PROG(PRIVSERVER_BINARY, name-test/test-privserver) 1514 1515AC_DEFINE_UNQUOTED(TEST_BUS_BINARY, "$DBUS_PWD/bus/dbus-daemon$EXEEXT", 1516 [Full path to the daemon in the builddir]) 1517AC_SUBST(TEST_BUS_BINARY) 1518 1519## Export the non-setuid external helper 1520TEST_LAUNCH_HELPER_BINARY="$DBUS_PWD/bus/dbus-daemon-launch-helper-test$EXEEXT" 1521AC_SUBST(TEST_LAUNCH_HELPER_BINARY) 1522AC_DEFINE_UNQUOTED(DBUS_TEST_LAUNCH_HELPER_BINARY, "$TEST_LAUNCH_HELPER_BINARY", 1523 [Full path to the launch helper test program in the builddir]) 1524 1525#### Find socket directories 1526if ! test -z "$TMPDIR" ; then 1527 DEFAULT_SOCKET_DIR=$TMPDIR 1528elif ! test -z "$TEMP" ; then 1529 DEFAULT_SOCKET_DIR=$TEMP 1530elif ! test -z "$TMP" ; then 1531 DEFAULT_SOCKET_DIR=$TMP 1532else 1533 DEFAULT_SOCKET_DIR=/tmp 1534fi 1535 1536if ! test -z "$with_test_socket_dir" ; then 1537 TEST_SOCKET_DIR="$with_test_socket_dir" 1538else 1539 TEST_SOCKET_DIR=$DEFAULT_SOCKET_DIR 1540fi 1541AC_SUBST(TEST_SOCKET_DIR) 1542AC_DEFINE_UNQUOTED(DBUS_TEST_SOCKET_DIR, "$TEST_SOCKET_DIR", [Where to put test sockets]) 1543 1544if ! test -z "$with_session_socket_dir" ; then 1545 DBUS_SESSION_SOCKET_DIR="$with_session_socket_dir" 1546else 1547 DBUS_SESSION_SOCKET_DIR=$DEFAULT_SOCKET_DIR 1548fi 1549AC_DEFINE_UNQUOTED(DBUS_SESSION_SOCKET_DIR, "$DBUS_SESSION_SOCKET_DIR", [Where per-session bus puts its sockets]) 1550AC_SUBST(DBUS_SESSION_SOCKET_DIR) 1551 1552if test x$dbus_win = xyes; then 1553 DBUS_SESSION_BUS_DEFAULT_ADDRESS="nonce-tcp:" 1554else 1555 DBUS_SESSION_BUS_DEFAULT_ADDRESS="unix:tmpdir=$DBUS_SESSION_SOCKET_DIR" 1556fi 1557AC_SUBST(DBUS_SESSION_BUS_DEFAULT_ADDRESS) 1558 1559# darwin needs this to initialize the environment 1560AC_CHECK_HEADERS(crt_externs.h) 1561AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) 1562AH_VERBATIM(_DARWIN_ENVIRON, 1563[ 1564#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) 1565# include <sys/time.h> 1566# include <crt_externs.h> 1567# define environ (*_NSGetEnviron()) 1568#endif 1569]) 1570 1571AC_OUTPUT([ 1572Doxyfile 1573dbus/versioninfo.rc 1574dbus/dbus-arch-deps.h 1575bus/system.conf 1576bus/session.conf 1577bus/messagebus 1578bus/messagebus-config 1579bus/rc.messagebus 1580bus/dbus-daemon.1 1581bus/dbus.service 1582bus/dbus.socket 1583Makefile 1584dbus/Makefile 1585bus/Makefile 1586tools/Makefile 1587test/Makefile 1588test/name-test/Makefile 1589doc/Makefile 1590dbus-1.pc 1591test/data/valid-config-files/debug-allow-all.conf 1592test/data/valid-config-files/debug-allow-all-sha1.conf 1593test/data/valid-config-files-system/debug-allow-all-pass.conf 1594test/data/valid-config-files-system/debug-allow-all-fail.conf 1595test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service 1596test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service 1597test/data/valid-service-files/org.freedesktop.DBus.TestSuiteForkingEchoService.service 1598test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service 1599test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service 1600test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service 1601test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteEchoService.service 1602test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service 1603test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service 1604test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service 1605test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service 1606test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service 1607test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service 1608]) 1609 1610dnl ========================================================================== 1611echo " 1612 D-Bus $VERSION 1613 ============== 1614 1615 prefix: ${EXPANDED_PREFIX} 1616 exec_prefix: ${exec_prefix} 1617 libdir: ${EXPANDED_LIBDIR} 1618 libexecdir: ${EXPANDED_LIBEXECDIR} 1619 bindir: ${EXPANDED_BINDIR} 1620 sysconfdir: ${EXPANDED_SYSCONFDIR} 1621 localstatedir: ${EXPANDED_LOCALSTATEDIR} 1622 datadir: ${EXPANDED_DATADIR} 1623 source code location: ${srcdir} 1624 compiler: ${CC} 1625 cflags: ${CFLAGS} 1626 cppflags: ${CPPFLAGS} 1627 cxxflags: ${CXXFLAGS} 1628 64-bit int: ${DBUS_INT64_TYPE} 1629 32-bit int: ${DBUS_INT32_TYPE} 1630 16-bit int: ${DBUS_INT16_TYPE} 1631 Doxygen: ${DOXYGEN} 1632 xmlto: ${XMLTO}" 1633 1634echo " 1635 Maintainer mode: ${USE_MAINTAINER_MODE} 1636 gcc coverage profiling: ${enable_gcov} 1637 Building unit tests: ${enable_tests} 1638 Building verbose mode: ${enable_verbose_mode} 1639 Building assertions: ${enable_asserts} 1640 Building checks: ${enable_checks} 1641 Building SELinux support: ${have_selinux} 1642 Building inotify support: ${have_inotify} 1643 Building dnotify support: ${have_dnotify} 1644 Building kqueue support: ${have_kqueue} 1645 Building X11 code: ${enable_x11} 1646 Building Doxygen docs: ${enable_doxygen_docs} 1647 Building XML docs: ${enable_xml_docs} 1648 Building cache support: ${enable_userdb_cache} 1649 Gettext libs (empty OK): ${INTLLIBS} 1650 Using XML parser: ${with_xml} 1651 Init scripts style: ${with_init_scripts} 1652 Abstract socket names: ${ac_cv_have_abstract_sockets} 1653 System bus socket: ${DBUS_SYSTEM_SOCKET} 1654 System bus address: ${DBUS_SYSTEM_BUS_DEFAULT_ADDRESS} 1655 System bus PID file: ${DBUS_SYSTEM_PID_FILE} 1656 Session bus address: ${DBUS_SESSION_BUS_DEFAULT_ADDRESS} 1657 Console auth dir: ${DBUS_CONSOLE_AUTH_DIR} 1658 Console owner file: ${have_console_owner_file} 1659 Console owner file path: ${DBUS_CONSOLE_OWNER_FILE} 1660 System bus user: ${DBUS_USER} 1661 Session bus services dir: ${EXPANDED_DATADIR}/dbus-1/services 1662 'make check' socket dir: ${TEST_SOCKET_DIR} 1663" 1664 1665if test x$enable_tests = xyes; then 1666 echo "NOTE: building with unit tests increases the size of the installed library and renders it insecure." 1667fi 1668if test x$enable_tests = xyes -a x$enable_asserts = xno; then 1669 echo "NOTE: building with unit tests but without assertions means tests may not properly report failures (this configuration is only useful when doing something like profiling the tests)" 1670fi 1671if test x$enable_gcov = xyes; then 1672 echo "NOTE: building with coverage profiling is definitely for developers only." 1673fi 1674if test x$enable_verbose_mode = xyes; then 1675 echo "NOTE: building with verbose mode increases library size, may slightly increase security risk, and decreases performance." 1676fi 1677if test x$enable_asserts = xyes; then 1678 echo "NOTE: building with assertions increases library size and decreases performance." 1679fi 1680if test x$enable_checks = xno; then 1681 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." 1682fi 1683if test x$dbus_use_libxml = xtrue; then 1684 echo 1685 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)." 1686fi 1687