-AC_INIT([at-spi2-core], [0.3.90], [accessibility-atspi@lists.linux-foundation.org])
+AC_INIT([at-spi2-core], [2.26.0], [accessibility-atspi@lists.linux-foundation.org])
+AC_PREREQ([2.59])
AC_CONFIG_AUX_DIR(config)
AC_CONFIG_MACRO_DIR([m4])
AC_SUBST(LT_REVISION)
AC_SUBST(LT_AGE)
-AM_INIT_AUTOMAKE([-Wall foreign])
+AM_INIT_AUTOMAKE([1.13 -Wall -Wno-portability foreign subdir-objects no-dist-gzip dist-xz])
-AC_PROG_CC
-AM_DISABLE_STATIC
-AM_PROG_LIBTOOL
+# Support silent build rules. Disable
+# by either passing --disable-silent-rules to configure or passing V=1
+# to make
+AM_SILENT_RULES([yes])
+
+AM_PROG_CC_C_O
+LT_INIT([disable-static])
PKG_PROG_PKG_CONFIG
AC_CONFIG_HEADERS([config.h])
+AC_PROG_SED
+
+AM_GNU_GETTEXT_VERSION([0.19.8])
+AM_GNU_GETTEXT([external])
+
+GETTEXT_PACKAGE="${PACKAGE}"
+AC_SUBST(GETTEXT_PACKAGE)
+AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],
+ ["$GETTEXT_PACKAGE"],
+ [The prefix for our gettext translation domains.])
+
PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0])
AC_SUBST(DBUS_LIBS)
AC_SUBST(DBUS_CFLAGS)
-PKG_CHECK_MODULES(GLIB, [glib-2.0])
+PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.36.0])
AC_SUBST(GLIB_LIBS)
AC_SUBST(GLIB_CFLAGS)
-PKG_CHECK_MODULES(DBUS_GLIB, [dbus-glib-1 >= 0.7.0])
-AC_SUBST(DBUS_GLIB_LIBS)
-AC_SUBST(DBUS_GLIB_CFLAGS)
+# Use pkg-config to find the glib-mkenums script
+GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+AC_SUBST(GLIB_MKENUMS)
PKG_CHECK_MODULES(GOBJ, [gobject-2.0 >= 2.0.0])
AC_SUBST(GOBJ_LIBS)
AC_SUBST(GOBJ_CFLAGS)
-AC_CHECK_LIB(dl, dlopen)
-
-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)
-
-#LIBS="$LIBS $X_LIBS"
-AC_CHECK_LIB(Xtst, XTestFakeKeyEvent, XTST_LIBS=-lXtst,[
- AC_MSG_ERROR([Couldn't find the Xtst library. Check config.log])],
- -lX11 -lXext)
-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], [], Xkb is present)
+PKG_CHECK_MODULES(GIO, [gio-2.0 >= 2.28])
+AC_SUBST(GIO_LIBS)
+AC_SUBST(GIO_CFLAGS)
+
+# --------------------------------------------------------------------
+# Find DL functionality
+
+AC_CHECK_LIB(c, dlopen, DL_LIBS="",
+ AC_CHECK_LIB(dl, dlopen, DL_LIBS="-ldl",
+ AC_MSG_ERROR([Could not find a library with the dlopen function])
+ )
+)
+
+AC_SUBST(DL_LIBS)
+
+AC_ARG_ENABLE(x11,
+ [AS_HELP_STRING([--disable-x11],
+ [disable the X11 backend])],,
+ [enable_x11=auto])
+
+AS_IF([test "x$enable_x11" = xno], [
+ AM_CONDITIONAL(USE_X11, false)
+], [
+ PKG_CHECK_MODULES(X11, [x11], [
+ AC_DEFINE(HAVE_X11, 1, [Define to use X11])
+ AC_SUBST(HAVE_X11)
+ have_x11=yes
+ ], [
+ AS_IF([test "x$enable_x11" = xyes], [
+ AC_MSG_ERROR([Unable to find X11 development files])
+ ])
+ have_x11=no
+ ])
+
+ # Check for additional X11 extensions
+ AS_IF([test "x$have_x11" = xyes], [
+ # XTest (mandatory)
+ PKG_CHECK_MODULES(XTST, [xtst])
+ X11_CFLAGS="$X11_CFLAGS $XTST_CFLAGS"
+ X11_LIBS="$X11_LIBS $XTST_LIBS"
+
+ # XInput (mandatory)
+ PKG_CHECK_MODULES(XINPUT, [xi])
+ X11_CFLAGS="$X11_CFLAGS $XINPUT_CFLAGS"
+ X11_LIBS="$X11_LIBS $XINPUT_LIBS"
+
+ # XKB (optional)
+ PKG_CHECK_MODULES(XKB, [xkbcommon-x11], [
+ AC_DEFINE(HAVE_XKB, 1, [Define to use XKB])
+ X11_CFLAGS="$X11_CFLAGS $XKB_CFLAGS"
+ X11_LIBS="$X11_LIBS $XKB_LIBS"
+ ], [:])
+ ])
+
+ AC_SUBST(X11_CFLAGS)
+ AC_SUBST(X11_LIBS)
+
+ AM_CONDITIONAL(USE_X11, test "x$have_x11" = xyes)
+])
+
+AC_ARG_WITH([dbus_daemondir],
+ [AS_HELP_STRING([--with-dbus-daemondir=<directory>],
+ [Directory where the DBUS daemon is installed])],
+ [DBUS_DAEMON="$with_dbus_daemondir/dbus-daemon"],
+ [AC_PATH_PROG([DBUS_DAEMON], [dbus-daemon], [XXXDBUSDAEMONNOTFOUND],
+ [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR]dnl
+[/libexec$PATH_SEPARATOR/usr/libexec$PATH_SEPARATOR/usr/local/bin]dnl
+[$PATH_SEPARATOR/usr/pkg/bin])]
+ )
+if test "$DBUS_DAEMON" = "XXXDBUSDAEMONNOTFOUND"; then
+ DBUS_DAEMON = "$bindir/dbus-daemon"
+ AC_MSG_WARN([at-spi2 relies on dbus, and the dbus-daemon was not found])
+ AC_MSG_WARN([we assume that it will be installed in "$bindir"])
fi
-
-have_xinput=
-AC_CHECK_LIB(Xi, XOpenDevice, XINPUT_LIBS=-lXi,,-lXext)
-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)
-
-AC_ARG_ENABLE(xevie, [--enable-xevie Build with XEViE support [default=yes]], enable_xevie="$enableval", enable_xevie=yes)
-
-if test x$enable_xevie = xyes ; then
- have_xevie=
- AC_CHECK_LIB(Xext, XevieStart, have_xevie="yes")
-
- if test "x$have_xevie" = "xyes"; then
- XEVIE_LIBS="-lXext"
- AC_DEFINE([HAVE_XEVIE], [], Xevie is present)
- else
- AC_CHECK_LIB(Xevie, XevieQueryVersion, have_xevie="maybe",,-lXevie -lXext)
- if test "x$have_xevie" = "xmaybe"; then
- AC_CHECK_HEADER(X11/extensions/Xevie.h, have_xevie=yes, [], [#include <X11/Xlib.h>])
- if test "x$have_xevie" = "xyes"; then
- XEVIE_LIBS="-lXext -lXevie"
- AC_DEFINE([HAVE_XEVIE], [], Xevie is present)
- fi
- fi
- fi
- AC_SUBST(XEVIE_LIBS)
-fi
-
-AC_ARG_VAR([DEFAULT_ATSPI_INTROSPECTION_PATH],
- [Set the default path for the install ofDBus introspection XML
- relative to the pkgdatadir.])
-if test -z "$DEFAULT_ATSPI_INTROSPECTION_PATH"; then
- DEFAULT_ATSPI_INTROSPECTION_PATH=at-spi2/dbus
-fi
-
-AS_AC_EXPAND(EXPANDED_BINDIR, "$bindir")
-AC_ARG_WITH(dbus_daemondir, AS_HELP_STRING([--with-dbus-daemondir=[dirname]],[Directory where the DBUS daemon is installed]))
-if test -z "$with_dbus_daemondir" ; then
- DBUS_DAEMONDIR=$EXPANDED_BINDIR
-else
- DBUS_DAEMONDIR=$with_dbus_daemondir
-fi
-AC_SUBST(DBUS_DAEMONDIR)
-AC_DEFINE_UNQUOTED(DBUS_DAEMONDIR,"$DBUS_DAEMONDIR", [Directory for installing the DBUS daemon])
+AC_SUBST(DBUS_DAEMON)
AC_ARG_WITH(dbus-services,
- [AC_HELP_STRING([--with-dbus-services=<dir>],
+ [AS_HELP_STRING([--with-dbus-services=<directory>],
[where D-BUS services directory is])])
if ! test -z "$with_dbus_services" ; then
DBUS_SERVICES_DIR="$with_dbus_services"
fi
AC_SUBST(DBUS_SERVICES_DIR)
+GOBJECT_INTROSPECTION_CHECK([1.32.0])
+
AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
-AC_ARG_ENABLE(relocate, [ --enable-relocate Relocate to coexist with CORBA [default=no]], enable_relocate="$enableval", enable_relocate=no)
-if test x$enable_relocate = xyes ; then
- AC_DEFINE(RELOCATE, , [Relocate to coexist with CORBA])
+dnl find sizes & alignments
+orig_CPPFLAGS=$CPPFLAGS
+CPPFLAGS="$CPPFLAGS $DBUS_CFLAGS"
+AC_CHECK_ALIGNOF(char)
+AC_CHECK_ALIGNOF(dbus_bool_t, [#include <dbus/dbus.h>])
+AC_CHECK_ALIGNOF(dbus_int16_t, [#include <dbus/dbus.h>])
+AC_CHECK_ALIGNOF(dbus_int32_t, [#include <dbus/dbus.h>])
+AC_CHECK_ALIGNOF(dbus_int64_t, [#include <dbus/dbus.h>])
+AC_CHECK_ALIGNOF(double, [#include <dbus/dbus.h>])
+AC_CHECK_ALIGNOF(dbind_pointer, [AC_INCLUDES_DEFAULT
+typedef void *dbind_pointer;])
+AC_CHECK_ALIGNOF(dbind_struct, [AC_INCLUDES_DEFAULT
+typedef struct {char s1;} dbind_struct;])
+
+GTK_DOC_CHECK([1.25])
+
+if test "x$GCC" = xyes; then
+ CFLAGS="$CFLAGS -Werror-implicit-function-declaration"
fi
-AM_CONDITIONAL(RELOCATE, test x$enable_relocate = xyes)
-AC_CONFIG_FILES([Makefile
- xml/Makefile
- registryd/Makefile])
+CPPFLAGS=$orig_CPPFLAGS
+
+AC_CONFIG_FILES([
+ Makefile
+ po/Makefile.in
+ xml/Makefile
+ dbind/Makefile
+ atspi/Makefile
+ registryd/Makefile
+ bus/Makefile
+ doc/Makefile
+ doc/libatspi/Makefile
+ doc/libatspi/version.xml
+ test/Makefile
+ atspi-2.pc
+])
AC_OUTPUT