2009-08-04 Mark Doffman <mark.doffman@codethink.co.uk>
[platform/upstream/at-spi2-core.git] / configure.ac
1 AC_INIT([at-spi2-core], [0.1.0], [accessibility-atspi@lists.linux-foundation.org])
2 AC_CONFIG_AUX_DIR(config)
3 AC_CONFIG_MACRO_DIR([m4])
4
5 AT_SPI_CORE_MAJOR_VERSION=0
6 AT_SPI_CORE_MINOR_VERSION=1
7 AT_SPI_CORE_VERSION="$AT_SPI_CORE_MAJOR_VERSION.$AT_SPI_CORE_MINOR_VERSION"
8 AC_SUBST(AT_SPI_CORE_VERSION)
9
10 DBIND_MAJOR_VERSION=0
11 DBIND_MINOR_VERSION=1
12 DBIND_VERSION="$DBIND_MAJOR_VERSION.$DBIND_MINOR_VERSION"
13 AC_SUBST(DBIND_VERSION)
14
15 DROUTE_MAJOR_VERSION=0
16 DROUTE_MINOR_VERSION=1
17 DROUTE_VERSION="$DROUTE_MAJOR_VERSION.$DROUTE_MINOR_VERSION"
18 AC_SUBST(DROUTE_VERSION) 
19
20 LT_RELEASE=$AT_SPI_CORE_VERSION
21 LT_CURRENT=0
22 LT_REVISION=0
23 LT_AGE=0
24 LT_VERSION_INFO='-version-info ${LT_CURRENT}:${LT_REVISION}:${LT_AGE}'
25 AC_SUBST(LT_VERSION_INFO)
26 AC_SUBST(LT_RELEASE)
27 AC_SUBST(LT_CURRENT)
28 AC_SUBST(LT_REVISION)
29 AC_SUBST(LT_AGE)
30
31 AM_INIT_AUTOMAKE([-Wall foreign])
32
33 AC_PROG_CC
34 AM_DISABLE_STATIC
35 AM_PROG_LIBTOOL
36 PKG_PROG_PKG_CONFIG
37
38 AC_CONFIG_HEADERS([config.h])
39
40 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0])
41 AC_SUBST(DBUS_LIBS)
42 AC_SUBST(DBUS_CFLAGS)
43
44 PKG_CHECK_MODULES(GLIB, [glib-2.0])
45 AC_SUBST(GLIB_LIBS)
46 AC_SUBST(GLIB_CFLAGS)
47
48 PKG_CHECK_MODULES(DBUS_GLIB, [dbus-glib-1 >= 0.7.0])
49 AC_SUBST(DBUS_GLIB_LIBS)
50 AC_SUBST(DBUS_GLIB_CFLAGS)
51
52 PKG_CHECK_MODULES(GOBJ, [gobject-2.0 >= 2.0.0])
53 AC_SUBST(GOBJ_LIBS)
54 AC_SUBST(GOBJ_CFLAGS)
55
56 PKG_CHECK_MODULES(GMODULE, [gmodule-2.0 >= 2.0.0])      
57 AC_SUBST(GMODULE_LIBS)
58 AC_SUBST(GMODULE_CFLAGS)
59
60 PKG_CHECK_MODULES(GDK, [gdk-2.0 >= 2.0.0])
61 AC_SUBST(GDK_LIBS)
62 AC_SUBST(GDK_CFLAGS)
63
64 AC_PATH_XTRA
65
66 if test x$no_x = xyes ; then
67         AC_MSG_ERROR([X development libraries not found])
68 else
69         X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
70 fi
71 AC_SUBST(X_LIBS)
72
73 #LIBS="$LIBS $X_LIBS"
74 AC_CHECK_LIB(Xtst, XTestFakeKeyEvent, XTST_LIBS=-lXtst,[
75         AC_MSG_ERROR([Couldn't find the Xtst library. Check config.log])],
76         -lX11 -lXext)
77 AC_SUBST(XTST_LIBS)
78
79 have_xkb=
80 AC_CHECK_LIB(X11, XkbQueryExtension, have_xkb="maybe")
81 if test "x$have_xkb" = "xmaybe"; then 
82         AC_CHECK_HEADER(X11/XKBlib.h, have_xkb=yes)
83 fi
84 if test "x$have_xkb" = "xyes"; then
85         AC_MSG_RESULT(yes)
86         AC_DEFINE([HAVE_XKB], [], Xkb is present)
87 fi
88
89 have_xinput=
90 AC_CHECK_LIB(Xi, XOpenDevice, XINPUT_LIBS=-lXi,,-lXext)
91 if test "x$XINPUT_LIBS" = x; then
92         AC_MSG_ERROR(Couldn't find the XInput library. Check config.log for details)
93 fi                             
94 AC_CHECK_HEADER(X11/extensions/XInput.h, have_xinput=yes)
95 AC_SUBST(XINPUT_LIBS)
96
97 AC_ARG_ENABLE(xevie, [--enable-xevie  Build with XEViE support [default=yes]], enable_xevie="$enableval", enable_xevie=yes)
98
99 if test x$enable_xevie = xyes ; then
100         have_xevie=
101         AC_CHECK_LIB(Xext, XevieStart, have_xevie="yes")
102
103         if test "x$have_xevie" = "xyes"; then
104                 XEVIE_LIBS="-lXext"
105                 AC_DEFINE([HAVE_XEVIE], [], Xevie is present)
106         else
107            AC_CHECK_LIB(Xevie, XevieQueryVersion, have_xevie="maybe",,-lXevie -lXext)
108            if test "x$have_xevie" = "xmaybe"; then
109               AC_CHECK_HEADER(X11/extensions/Xevie.h, have_xevie=yes, [], [#include <X11/Xlib.h>])
110               if test "x$have_xevie" = "xyes"; then
111                       XEVIE_LIBS="-lXext -lXevie"              
112                       AC_DEFINE([HAVE_XEVIE], [], Xevie is present)
113               fi
114            fi   
115         fi
116         AC_SUBST(XEVIE_LIBS)
117 fi
118
119 dnl Allow disabling SMlib
120 AC_ARG_ENABLE(sm, [  --enable-sm  Enable session management support [default=yes]], enable_sm="$enableval", enable_sm=yes)
121
122 if test x$enable_sm = xyes ; then
123         have_sm=
124         AC_CHECK_LIB(SM, SmcSaveYourselfDone, have_sm="yes")
125         if test x$have_sm = xyes ; then
126                 SM_LIBS="-lSM -lICE"
127                 AC_DEFINE(HAVE_SM, , [Building with SM support])
128         fi
129         AC_SUBST(SM_LIBS)
130 fi
131
132
133 AC_ARG_VAR([DEFAULT_ATSPI_INTROSPECTION_PATH],
134            [Set the default path for the install ofDBus introspection XML
135             relative to the pkgdatadir.])
136 if test -z "$DEFAULT_ATSPI_INTROSPECTION_PATH"; then
137           DEFAULT_ATSPI_INTROSPECTION_PATH=dbus
138 fi
139
140 AC_ARG_WITH(dbus-services,
141            [AC_HELP_STRING([--with-dbus-services=<dir>],
142            [where D-BUS services directory is])])
143 if ! test -z "$with_dbus_services" ; then
144            DBUS_SERVICES_DIR="$with_dbus_services"
145 else
146            DBUS_SERVICES_DIR="$datadir/dbus-1/services"
147 fi
148 AC_SUBST(DBUS_SERVICES_DIR)
149
150 dnl find sizes & alignments
151 orig_CPPFLAGS=$CPPFLAGS
152 CPPFLAGS="$CPPFLAGS $DBUS_CFLAGS"
153 DBIND_CHECK_ALIGNOF(char)
154 DBIND_CHECK_ALIGNOF(dbus_bool_t)
155 DBIND_CHECK_ALIGNOF(dbus_int16_t)
156 DBIND_CHECK_ALIGNOF(dbus_int32_t)
157 DBIND_CHECK_ALIGNOF(dbus_int64_t)
158 DBIND_CHECK_ALIGNOF(double)
159 DBIND_CHECK_ALIGNOF(dbind_pointer)
160 DBIND_CHECK_ALIGNOF(dbind_struct)
161 CPPFLAGS=$orig_CPPFLAGS 
162
163 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
164
165 AC_CONFIG_FILES([Makefile
166                  pkgconfig/dbind-0.1.pc
167                  pkgconfig/dbind-0.1-uninstalled.pc
168                  pkgconfig/droute-0.1.pc
169                  pkgconfig/droute-0.1-uninstalled.pc
170                  pkgconfig/Makefile
171                  xml/Makefile
172                  tools/Makefile
173                  droute/Makefile
174                  registryd/Makefile
175                  registryd/at-spi-registryd.desktop.in
176                  dbind/Makefile
177                  dbind/dbind-config.h])
178
179 AC_OUTPUT