2003-06-25 Padraig O'Briain <padraig.obriain@sun.com>
[platform/core/uifw/at-spi2-atk.git] / configure.in
index 41e6990..f76603a 100644 (file)
@@ -1,10 +1,10 @@
 AC_INIT(idl/Accessibility.idl)
 
 AT_SPI_MAJOR_VERSION=1
-AT_SPI_MINOR_VERSION=1
-AT_SPI_MICRO_VERSION=0
-AT_SPI_INTERFACE_AGE=0
-AT_SPI_BINARY_AGE=0
+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)
@@ -57,8 +57,16 @@ 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
-       exit (("$gtk_doc_version" =~ /^[[0-9]]+\.[[0-9]]+$/) &&
-            ("$gtk_doc_version" >= "$gtk_doc_min_version") ? 0 : 1);
+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
@@ -92,39 +100,47 @@ 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, \
        libbonobo-2.0 >= 1.107.0 \
-       atk >= 0.10 \
-       gtk+-2.0 >= 1.3.12 \
-       gail >= 0.11)
+       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(REGISTRYD, \
        libbonobo-2.0 >= 1.107.0 \
-       gtk+-2.0 \
-       atk >= 0.10)
+       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, \
        libbonobo-2.0 >= 1.107.0 \
-       atk >= 0.10 \
-       gtk+-2.0 >= 2.0.0 \
-       gail >= 0.11)
+       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(ATK_BRIDGE, \
        libbonobo-2.0 >= 1.107.0 \
-       atk >= 0.10)
+       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.0.0)
+       atk >= 1.3.4)
 AC_SUBST(LIBCSPI_LIBS)
 AC_SUBST(LIBCSPI_CFLAGS)
 
@@ -138,28 +154,33 @@ 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
-  save_LIBS="$LIBS"
-  for xtstpath in /usr/X11R6/lib /usr/openwin/lib; do
-    LIBS="-L$xtstpath -lXtst"
-    case "$host" in
-    *solaris*) XTST_RPATH_FLAGS="-R$xtstpath" ;;
-    esac
-    AC_MSG_CHECKING(for -lXtst in $xtstpath)
-    AC_TRY_LINK([], [XTestFakeKeyEvent()], [
-       AC_MSG_RESULT(yes)
-       XTST_LIBS="$XTST_RPATH_FLAGS -L$xtstpath -lXtst"
-        LIBS="$save_LIBS"
-       break],[AC_MSG_RESULT(no)])
-  done
-  if test "x$XTST_LIBS" = x; then
-    AC_MSG_ERROR(Couldn't find the Xtst library. Check config.log for details)
-  fi
+  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)
@@ -178,6 +199,15 @@ AC_TRY_CPP([#include <popt.h>
 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
 libspi-1.0.pc