2003-06-25 Padraig O'Briain <padraig.obriain@sun.com>
[platform/core/uifw/at-spi2-atk.git] / configure.in
index 0b5a7d2..f76603a 100644 (file)
@@ -1,10 +1,10 @@
-AC_INIT(idl/Accessible.idl)
+AC_INIT(idl/Accessibility.idl)
 
-AT_SPI_MAJOR_VERSION=0
-AT_SPI_MINOR_VERSION=0
-AT_SPI_MICRO_VERSION=1
-AT_SPI_INTERFACE_AGE=0
-AT_SPI_BINARY_AGE=0
+AT_SPI_MAJOR_VERSION=1
+AT_SPI_MINOR_VERSION=3
+AT_SPI_MICRO_VERSION=4
+AT_SPI_INTERFACE_AGE=4
+AT_SPI_BINARY_AGE=4
 AT_SPI_VERSION="$AT_SPI_MAJOR_VERSION.$AT_SPI_MINOR_VERSION.$AT_SPI_MICRO_VERSION"
 AM_INIT_AUTOMAKE(at-spi, $AT_SPI_VERSION)
 AC_SUBST(AT_SPI_MAJOR_VERSION)
@@ -15,9 +15,9 @@ AC_SUBST(AT_SPI_BINARY_AGE)
 
 # libtool versioning
 LT_RELEASE=$AT_SPI_MAJOR_VERSION.$AT_SPI_MINOR_VERSION
-LT_CURRENT=`expr $AT_SPI_MICRO_VERSION - $AT_SPI_INTERFACE_AGE`
-LT_REVISION=$AT_SPI_INTERFACE_AGE
-LT_AGE=`expr $AT_SPI_BINARY_AGE - $AT_SPI_INTERFACE_AGE`
+LT_CURRENT=9
+LT_REVISION=4
+LT_AGE=9
 LT_VERSION_INFO='-version-info ${LT_CURRENT}:${LT_REVISION}:${LT_AGE}'
 AC_SUBST(LT_VERSION_INFO)
 AC_SUBST(LT_RELEASE)
@@ -31,7 +31,7 @@ AM_CONFIG_HEADER(config.h)
 dnl Initialize maintainer mode
 AM_MAINTAINER_MODE
 
-AM_PROG_XML_I18N_TOOLS
+AC_PROG_INTLTOOL
 
 dnl Checks for programs
 AC_PROG_CC
@@ -47,29 +47,102 @@ AM_DISABLE_STATIC
 AM_PROG_LIBTOOL
 
 dnl internationalization support
-ALL_LINGUAS=""
-AM_GLIB_GNU_GETTEXT
+dnl ALL_LINGUAS=""
+dnl AM_GLIB_GNU_GETTEXT
+
+AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
+
+gtk_doc_min_version=0.6
+if $GTKDOC ; then
+    gtk_doc_version=`gtkdoc-mkdb --version`
+    AC_MSG_CHECKING([gtk-doc version ($gtk_doc_version) >= $gtk_doc_min_version])
+    if perl <<EOF ; then
+my @installed = split /\./, "$gtk_doc_version";
+my @required = split /\./, "$gtk_doc_min_version";
+
+while (scalar @required) {
+    my \$installed_ver = (shift @installed || 0);
+    my \$required_ver = shift @required;
+    exit 1 if (\$installed_ver < \$required_ver);
+    exit 0 if (\$installed_ver > \$required_ver);
+}
+exit 0;
+EOF
+      AC_MSG_RESULT(yes)
+   else
+      AC_MSG_RESULT(no)
+       GTKDOC=false
+   fi
+fi
+
+dnl Let people disable the gtk-doc stuff.
+AC_ARG_ENABLE(gtk-doc, [  --enable-gtk-doc  Use gtk-doc to build documentation [default=auto]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)
+
+if test x$enable_gtk_doc = xauto ; then
+  if test x$GTKDOC = xtrue ; then
+    enable_gtk_doc=yes
+  else
+    enable_gtk_doc=no
+  fi
+fi
+
+dnl NOTE: We need to use a separate automake conditional for this
+dnl      to make this work with the tarballs.
+AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
+
+AC_PATH_XTRA
+
+if test x$no_x = xyes ; then
+  AC_MSG_ERROR([X development libraries not found])
+else
+  X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+fi
+
+AC_SUBST(X_LIBS)
+
+dnl Check for obsolete (mis-numbered) versions of at-spi
+dnl oldlibs=`echo $(libdir)/libspi.so.1.*`
+dnl if test $$oldlibs != "$(libdir)/libspi.so.1.*" ; then
+dnl   AC_MSG_ERROR(Old libspi.1.x library found in $libdir. Please remove $(libdir)/libspi.so.1 and $$oldlibs)
+dnl fi
 
 dnl Checks for libraries
-PKG_CHECK_MODULES(LIBSPI, bonobo-activation-2.0 >= 0.9.1 libbonobo-2.0 >= 1.97.0 ORBit-2.0 >= 2.3.91 atk >= 0.2)
+PKG_CHECK_MODULES(LIBSPI, \
+       libbonobo-2.0 >= 1.107.0 \
+       atk >= 1.3.4 \
+       gtk+-2.0 > 2.0.0 \
+       gail >= 1.3.0)
 AC_SUBST(LIBSPI_LIBS)
 AC_SUBST(LIBSPI_CFLAGS)
 
-PKG_CHECK_MODULES(LIBCSPI, bonobo-activation-2.0 >= 0.9.1 libbonobo-2.0 >= 1.97.0 ORBit-2.0 >= 2.3.91 atk >= 0.2)
-AC_SUBST(LIBCSPI_LIBS)
-AC_SUBST(LIBCSPI_CFLAGS)
-
-PKG_CHECK_MODULES(REGISTRYD, bonobo-activation-2.0 >= 0.9.1 libbonobo-2.0 >= 1.97.0 atk >= 0.2)
+PKG_CHECK_MODULES(REGISTRYD, \
+       libbonobo-2.0 >= 1.107.0 \
+       gtk+-2.0 > 2.0.0 \
+       atk >= 1.3.4)
+REGISTRYD_LIBS="$REGISTRYD_LIBS" 
 AC_SUBST(REGISTRYD_LIBS)
 AC_SUBST(REGISTRYD_CFLAGS)
 
-PKG_CHECK_MODULES(TESTS, bonobo-activation-2.0 >= 0.9.1 libbonobo-2.0 >= 1.97.0 ORBit-2.0 atk >= 0.2)
+PKG_CHECK_MODULES(TESTS, \
+       libbonobo-2.0 >= 1.107.0 \
+       atk >= 1.3.4 \
+       gtk+-2.0 > 2.0.0 \
+       gail >= 1.3.0)
 AC_SUBST(TESTS_LIBS)
 AC_SUBST(TESTS_CFLAGS)
 
-PKG_CHECK_MODULES(AT_BRIDGE, bonobo-activation-2.0 >= 0.9.1 libbonobo-2.0 >= 1.97.0 ORBit-2.0 atk >= 0.2)
-AC_SUBST(AT_BRIDGE_LIBS)
-AC_SUBST(AT_BRIDGE_CFLAGS)
+PKG_CHECK_MODULES(ATK_BRIDGE, \
+       libbonobo-2.0 >= 1.107.0 \
+       atk >= 1.3.4)
+ATK_BRIDGE_LIBS="$ATK_BRIDGE_LIBS" 
+AC_SUBST(ATK_BRIDGE_LIBS)
+AC_SUBST(ATK_BRIDGE_CFLAGS)
+
+PKG_CHECK_MODULES(LIBCSPI, \
+       libbonobo-2.0 >= 1.107.0 \
+       atk >= 1.3.4)
+AC_SUBST(LIBCSPI_LIBS)
+AC_SUBST(LIBCSPI_CFLAGS)
 
 dnl orbit-idl.
 ORBIT_IDL="`$PKG_CONFIG --variable=orbit_idl ORBit-2.0`"
@@ -81,21 +154,74 @@ LIBBONOBO_IDL_DIR="`$PKG_CONFIG --variable=idldir libbonobo-2.0`"
 AC_SUBST(BONOBO_ACTIVATION_IDL_DIR)
 AC_SUBST(LIBBONOBO_IDL_DIR)
 
+CFLAGS="$CFLAGS $X_LIBS"
+dnl path to Xtst
+AC_CHECK_LIB(Xtst, XTestFakeKeyEvent, XTST_LIBS=-lXtst)
+if test "x$XTST_LIBS" = x; then
+  AC_MSG_ERROR(Couldn't find the Xtst library. Check config.log for details)
+fi
+AC_SUBST(XTST_LIBS)
+
+have_xkb=
+AC_CHECK_LIB(X11, XkbQueryExtension, have_xkb="maybe")
+if test "x$have_xkb" = "xmaybe"; then 
+  AC_CHECK_HEADER(X11/XKBlib.h, have_xkb=yes)
+fi
+if test "x$have_xkb" = "xyes"; then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(HAVE_XKB)
+fi
+
+have_xinput=
+AC_CHECK_LIB(Xi, XOpenDevice, XINPUT_LIBS=-lXi)
+if test "x$XINPUT_LIBS" = x; then
+  AC_MSG_ERROR(Couldn't find the XInput library. Check config.log for details)
+fi                            
+AC_CHECK_HEADER(X11/extensions/XInput.h, have_xinput=yes)
+AC_SUBST(XINPUT_LIBS)
+
+dnl CFLAGS="$CFLAGS -Wall"
 AC_SUBST(CFLAGS)
 AC_SUBST(CPPFLAGS)
 AC_SUBST(LDFLAGS)
 
+AC_CHECK_LIB(popt, poptGetContext, [POPT_LIBS="-lpopt"],
+AC_MSG_ERROR([popt is required to build at-spi.
+You can download the latest version from ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/]))
+AC_SUBST(POPT_LIBS)
+AC_MSG_CHECKING([for POPT_ARG_FLOAT in popt.h])
+AC_TRY_CPP([#include <popt.h>
+#ifndef POPT_ARG_FLOAT
+#error popt too old
+#endif], AC_MSG_RESULT(yes), [
+  AC_MSG_RESULT(no)
+  AC_MSG_ERROR([A newer version of popt is required to build at-spi.
+You can download the latest version from ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/])
+])
+
+REBUILD=\#
+if test "x$enable_rebuilds" = "xyes" && \
+       test -n "$PERL" && \
+       $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \
+     test -n "$AWK" ; then
+  REBUILD=
+fi
+AC_SUBST(REBUILD)
+
 AC_OUTPUT([
 Makefile
-po/Makefile.in
+libspi-1.0.pc
+cspi-1.0.pc
 docs/Makefile
+docs/reference/Makefile
+docs/reference/cspi/Makefile
 idl/Makefile
 libspi/Makefile
 registryd/Makefile
-registryd/Accessibility_Registry.server
-at-bridge/Makefile
+atk-bridge/Makefile
 test/Makefile
 cspi/Makefile
+cspi/bonobo/Makefile
 ])
 
 echo "AT-SPI setup: