2003-12-02 Richard Hult <richard@imendio.com>
[platform/upstream/dbus.git] / configure.in
index 6cf4acc..5d08f26 100644 (file)
@@ -3,7 +3,7 @@ AC_PREREQ(2.52)
 
 AC_INIT(dbus/dbus.h)
 
-AM_INIT_AUTOMAKE(dbus, 0.11)
+AM_INIT_AUTOMAKE(dbus, 0.20)
 
 AM_CONFIG_HEADER(config.h)
 
@@ -30,7 +30,8 @@ AC_ARG_ENABLE(ansi,             [  --enable-ansi         enable -ansi -pedantic
 AC_ARG_ENABLE(verbose-mode,     [  --enable-verbose-mode support verbose debug mode],enable_verbose_mode=$enableval,enable_verbose_mode=$USE_MAINTAINER_MODE)
 AC_ARG_ENABLE(asserts,          [  --enable-asserts      include assertion checks],enable_asserts=$enableval,enable_asserts=$USE_MAINTAINER_MODE)
 AC_ARG_ENABLE(checks,           [  --enable-checks       include sanity checks on public API],enable_checks=$enableval,enable_checks=yes)
-AC_ARG_ENABLE(docs,             [  --enable-docs         build documentation (requires Doxygen and jade)],enable_docs=$enableval,enable_docs=auto)
+AC_ARG_ENABLE(xml-docs,         [  --enable-xml-docs     build XML documentation (requires xmlto)],enable_xml_docs=$enableval,enable_xml_docs=auto)
+AC_ARG_ENABLE(doxygen-docs,     [  --enable-doxygen-docs     build DOXYGEN documentation (requires Doxygen)],enable_doxygen_docs=$enableval,enable_doxygen_docs=auto)
 AC_ARG_ENABLE(gcov,             [  --enable-gcov         compile with coverage profiling instrumentation (gcc only)],enable_gcov=$enableval,enable_gcov=no)
 AC_ARG_ENABLE(abstract-sockets, [  --enable-abstract-sockets  use abstract socket namespace (linux only)],enable_abstract_sockets=$enableval,enable_abstract_sockets=auto)
 AC_ARG_ENABLE(gcj,              [  --enable-gcj          build gcj bindings],enable_gcj=$enableval,enable_gcj=no)
@@ -222,6 +223,15 @@ changequote([,])dnl
 if test x$enable_gcov = xyes; then
      ## so that config.h changes when you toggle gcov support
      AC_DEFINE_UNQUOTED(DBUS_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing])
+
+     AC_MSG_CHECKING([for gcc 3.3 version of gcov file format])
+     have_gcc33_gcov=no
+     AC_RUN_IFELSE( [AC_LANG_PROGRAM( , [[ if (__GNUC__ >=3 && __GNUC_MINOR__ >= 3) exit (0); else exit (1); ]])],  
+                   have_gcc33_gcov=yes)
+     if test x$have_gcc33_gcov = xyes ; then
+         AC_DEFINE_UNQUOTED(DBUS_HAVE_GCC33_GCOV, 1, [Defined if we have gcc 3.3 and thus the new gcov format])
+     fi
+     AC_MSG_RESULT($have_gcc33_gcov)
 fi
 AM_CONDITIONAL(DBUS_GCOV_ENABLED, test x$enable_gcov = xyes)
 
@@ -615,7 +625,7 @@ if test -n "$QTDIR" -a -f "$QTDIR/include/qglobal.h"; then
     have_qt=yes
     DBUS_QT_CXXFLAGS="-I$QTDIR/include"
 else
-    for dir in "${prefix}/include/qt" "/usr/include/qt-3.1" "/usr/include/qt3" "/usr/include/qt" "/usr/lib/qt/include"; do
+    for dir in "${prefix}/include/qt" "/usr/include/qt-3.1" "/usr/include/qt3" "/usr/include/qt" "/usr/lib/qt/include" "/usr/lib/qt-3.1/include"; do
         if test -f "$dir/qglobal.h"; then
             have_qt=yes
             DBUS_QT_CXXFLAGS="-I$dir"
@@ -685,36 +695,67 @@ fi
 AC_SUBST(DBUS_X_CFLAGS)
 AC_SUBST(DBUS_X_LIBS)
 
-### Documentation
+### Doxygen Documentation
 
 AC_PATH_PROG(DOXYGEN, doxygen, no)
-AC_PATH_PROG(DB2HTML, db2html, no)
 
-AC_MSG_CHECKING([whether to build documentation])
+AC_MSG_CHECKING([whether to build Doxygen documentation])
 
-if test x$DOXYGEN = xno -o x$DB2HTML = xno ; then
-    have_docs_tools=no
+if test x$DOXYGEN = xno ; then
+    have_doxygen=no
 else
-    have_docs_tools=yes
+    have_doxygen=yes
 fi
 
-if test x$enable_docs = xauto ; then
-    if test x$have_docs_tools = xno ; then
-        enable_docs=no
+if test x$enable_doxygen_docs = xauto ; then
+    if test x$have_doxygen = xno ; then
+        enable_doxygen_docs=no
     else
-        enable_docs=yes
+        enable_doxygen_docs=yes
     fi
 fi
 
-if test x$enable_docs = xyes; then
-    if test x$have_docs_tools = xno; then
-       AC_MSG_ERROR([Building docs explicitly required, but Doxygen or db2html not found])
+if test x$enable_doxygen_docs = xyes; then
+    if test x$have_doxygen = xno; then
+       AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found])
     fi
 fi
 
-AM_CONDITIONAL(DBUS_DOCS_ENABLED, test x$enable_docs = xyes)
+AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test x$enable_doxygen_docs = xyes)
 AC_MSG_RESULT(yes)
 
+### XML Documentation
+
+AC_PATH_PROG(XMLTO, xmlto, no)
+
+AC_MSG_CHECKING([whether to build XML documentation])
+
+if test x$XMLTO = xno ; then
+    have_xmlto=no
+else
+    have_xmlto=yes
+fi
+
+if test x$enable_xml_docs = xauto ; then
+    if test x$have_xmlto = xno ; then
+        enable_xml_docs=no
+    else
+        enable_xml_docs=yes
+    fi
+fi
+
+if test x$enable_xml_docs = xyes; then
+    if test x$have_xmlto = xno; then
+       AC_MSG_ERROR([Building XML docs explicitly required, but xmlto not found])
+    fi
+fi
+
+AM_CONDITIONAL(DBUS_XML_DOCS_ENABLED, test x$enable_xml_docs = xyes)
+AC_MSG_RESULT(yes)
+
+#### Have to go $localstatedir->$prefix/var->/usr/local/var   
+#### someone please fix this a better way...
+
 #### find the actual value for $prefix that we'll end up with
 ##   (I know this is broken and should be done in the Makefile, but
 ##    that's a major pain and almost nobody actually seems to care)
@@ -725,35 +766,39 @@ else
   REAL_PREFIX=$prefix
 fi
 
-#### Have to go $localstatedir->$prefix/var->/usr/local/var   
-#### someone please fix this a better way...
-LOCALSTATEDIR_TMP="$localstatedir"
+## temporarily change prefix and exec_prefix
 old_prefix=$prefix
 prefix=$REAL_PREFIX
+
+if test "x$exec_prefix" = xNONE ; then
+   REAL_EXEC_PREFIX=$REAL_PREFIX
+else
+   REAL_EXEC_PREFIX=$exec_prefix
+fi
+old_exec_prefix=$exec_prefix
+exec_prefix=$REAL_EXEC_PREFIX
+
+## eval everything
+LOCALSTATEDIR_TMP="$localstatedir"
 EXPANDED_LOCALSTATEDIR=`eval echo $LOCALSTATEDIR_TMP`
-prefix=$old_prefix
 AC_SUBST(EXPANDED_LOCALSTATEDIR)
 
 SYSCONFDIR_TMP="$sysconfdir"
-old_prefix=$prefix
-prefix=$REAL_PREFIX
 EXPANDED_SYSCONFDIR=`eval echo $SYSCONFDIR_TMP`
-prefix=$old_prefix
 AC_SUBST(EXPANDED_SYSCONFDIR)
 
 BINDIR_TMP="$bindir"
-old_prefix=$prefix
-prefix=$REAL_PREFIX
 EXPANDED_BINDIR=`eval echo $BINDIR_TMP`
-prefix=$old_prefix
 AC_SUBST(EXPANDED_BINDIR)
 
-old_exec_prefix=${exec_prefix}
-test "x$exec_prefix" = xNONE && eval exec_prefix=${prefix}
-eval EXPANDED_LIBDIR=${libdir}
-exec_prefix=${old_exec_prefix}
+LIBDIR_TMP="$libdir"
+EXPANDED_LIBDIR=`eval echo $LIBDIR_TMP`
 AC_SUBST(EXPANDED_LIBDIR)
 
+## put prefix and exec_prefix back
+prefix=$old_prefix
+exec_prefix=$old_exec_prefix
+
 #### Check our operating system
 operating_system=unknown
 if test -f /etc/redhat-release || test -f $EXPANDED_SYSCONFDIR/redhat-release ; then
@@ -781,6 +826,13 @@ else
 fi
 
 AC_SUBST(DBUS_SYSTEM_SOCKET)
+AC_DEFINE_UNQUOTED(DBUS_SYSTEM_SOCKET,"$DBUS_SYSTEM_SOCKET",[The name of the socket the system bus listens on by default])
+
+## system bus only listens on local domain sockets, and never 
+## on an abstract socket (so only root can create the socket)
+DBUS_SYSTEM_BUS_DEFAULT_ADDRESS="unix:path=$DBUS_SYSTEM_SOCKET"
+AC_SUBST(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS)
+AC_DEFINE_UNQUOTED(DBUS_SYSTEM_BUS_DEFAULT_ADDRESS, "$DBUS_SYSTEM_BUS_DEFAULT_ADDRESS",[The default D-BUS address of the system bus])
 
 #### Set up the pid file
 if ! test -z "$with_system_pid_file"; then
@@ -805,6 +857,7 @@ AC_SUBST(TEST_$1)
 
 TEST_PATH(SERVICE_DIR, data/valid-service-files)
 TEST_PATH(SERVICE_BINARY, test-service)
+TEST_PATH(GLIB_SERVICE_BINARY, test-service-glib)
 TEST_PATH(EXIT_BINARY, test-exit)
 TEST_PATH(SEGFAULT_BINARY, test-segfault)
 TEST_PATH(SLEEP_FOREVER_BINARY, test-sleep-forever)
@@ -915,6 +968,11 @@ echo "
                   ==============
 
        prefix:                   ${prefix}
+       exec_prefix:              ${exec_prefix}
+        libdir:                   ${EXPANDED_LIBDIR}
+        bindir:                   ${EXPANDED_BINDIR}
+        sysconfdir:               ${EXPANDED_SYSCONFDIR}
+        localstatedir:            ${EXPANDED_LOCALSTATEDIR}
        source code location:     ${srcdir}
        compiler:                 ${CC}
        cflags:                   ${CFLAGS}
@@ -922,7 +980,7 @@ echo "
        cxxflags:                 ${CXXFLAGS}
        64-bit int:               ${DBUS_INT64_TYPE}
         Doxygen:                  ${DOXYGEN}
-        db2html:                  ${DB2HTML}"
+        xmlto:                    ${XMLTO}"
 
 if test x$enable_gcj = xyes ; then
 echo \
@@ -956,11 +1014,13 @@ echo "
         Building Python bindings: ${have_python}
         Building GTK+ tools:      ${have_gtk}
         Building X11 code:        ${enable_x11}
-        Building documentation:   ${enable_docs}
+        Building Doxygen docs:    ${enable_doxygen_docs}
+        Building XML docs:        ${enable_xml_docs}
         Using XML parser:         ${with_xml}
         Init scripts style:       ${with_init_scripts}
         Abstract socket names:    ${have_abstract_sockets}
         System bus socket:        ${DBUS_SYSTEM_SOCKET}
+        System bus address:       ${DBUS_SYSTEM_BUS_DEFAULT_ADDRESS}
         System bus PID file:      ${DBUS_SYSTEM_PID_FILE}
         Session bus socket dir:   ${DBUS_SESSION_SOCKET_DIR}
         'make check' socket dir:  ${TEST_SOCKET_DIR}