2 AC_INIT([dasher],[4.9.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=dasher])
3 AC_REVISION([$Id: configure.in,v])
4 AC_CONFIG_SRCDIR([Src/main.cc])
5 AC_CONFIG_HEADERS(config.h)
7 dnl The following two changes are required currently for the Maemo build (but will break the GNOME build)
9 dnl AM_INIT_AUTOMAKE([1.9 gnu check-news dist-bzip2 no-dist-gzip])
10 AM_INIT_AUTOMAKE([1.8 gnu check-news dist-bzip2 no-dist-gzip])
14 IT_PROG_INTLTOOL([0.34.90])
15 dnl AC_PROG_INTLTOOL(0.30)
22 GETTEXT_PACKAGE=dasher
23 AC_SUBST(GETTEXT_PACKAGE)
24 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package])
33 PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.4)
35 AC_CHECK_LIB(expat, XML_Parse,, AC_MSG_ERROR([Expat library not found.]))
38 AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)])
42 AC_HELP_STRING([--enable-debug],[build with additional debugging checks (default is NO)]),
43 if test $withval = "no"; then
51 AC_HELP_STRING([--with-gnome],[build with GNOME support (default is YES)]),
52 if test $withval = "no"; then
59 dnl Just useful for debugging
61 AC_HELP_STRING([--with-gvfs],
62 [build with gvfs from gio in glib (default is YES)]),
65 if test $with_gvfs != "no"; then
66 PKG_CHECK_MODULES(GIO, gio-2.0,
68 AC_DEFINE(HAVE_GIO, 1, [gio exists so use gvfs])],
72 AC_ARG_ENABLE([speech],
73 AC_HELP_STRING([--enable-speech],[build with speech support (default is NO)]),
74 if test $enableval = "no"; then
82 AC_HELP_STRING([--with-qte],[build with QTE support (default is NO -- currently untested)]),
83 if test $withval = "no"; then
91 AC_HELP_STRING([--with-gpe],[build with GPE support (default is NO -- currently untested)]),
92 if test $withval = "no"; then
100 AC_HELP_STRING([--enable-a11y],[build with support for the GNOME accessibility framework (default is YES)]),
101 if test $enableval = "no"; then
108 AC_ARG_ENABLE([japanese],
109 AC_HELP_STRING([--enable-japanese],[build with support for Japanese Kanji entry (experimental -- default is NO)]),
110 if test $enableval = "no"; then
113 AC_CHECK_LIB(canna, RkBgnBun,, AC_MSG_ERROR([Canna library not found (required for Japanese).]))
118 AC_ARG_ENABLE([chinese],
119 AC_HELP_STRING([--enable-chinese],[build with support for Chinese PinYin entry (experimental -- default is NO)]),
120 if test $enableval = "no"; then
127 AC_ARG_ENABLE([joystick],
128 AC_HELP_STRING([--enable-joystick],[Build with Linux joystick support (note that other UNIX based operating systems aren't supported here)]),
129 if test $enableval = "no"; then
137 AC_ARG_ENABLE([tilt],
138 AC_HELP_STRING([--enable-tilt],[Build with experimental support for tilt sensor input (experimental -- default is NO)]),
139 if test $enableval = "no"; then
148 AC_HELP_STRING([--with-maemo],[build with Maemo support (default is NO)]),
149 if test $withval = "yes"; then
158 AC_ARG_WITH([maemo-fullscreen],
159 AC_HELP_STRING([--with-maemo-fullscreen],[build as standalone Maemo fullscreen app (default is NO)]),
160 if test $withval = "yes"; then
161 WITHMAEMOFULLSCREEN=true;
166 WITHMAEMOFULLSCREEN=false;
168 WITHMAEMOFULLSCREEN=false)
171 dnl AC_ARG_WITH([darwin],
172 dnl AC_HELP_STRING([--with-darwin],[build with Darwin (Mac OS X) support (default is NO)]),
173 dnl if test $withval = "yes"; then
176 dnl WITHDARWIN=false;
178 dnl WITHDARWIN=false)
181 AC_HELP_STRING([--with-cairo],[build with cairo support (default is YES)]),
182 if test $withval = "no"; then
189 if [[ x"$WITHGTK2" = xtrue ]]
191 PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.4.0,[GTK2HERE=true],[GTK2HERE=false])
192 PKG_CHECK_MODULES(GCONF, gconf-2.0,[GCONF2HERE=true],[GCONF2HERE=false])
193 if [[ x$GCONF2HERE = xfalse ]]; then
194 AC_MSG_WARN("GConf was not detected - user preferences will not be stored.")
198 if [[ x"$GTK2HERE" = xtrue ]] && [[ x"$WITHGTK2" = xtrue ]] && [[ x"$WITHQTE" != xtrue ]]
201 elif [[ x"$GTK2HERE" = xtrue ]] && [[ x"$WITHQTE" != xtrue ]]
208 if [[ x$BUILDGTK2 = xfalse ]] && [[ x"$WITHQTE" != xtrue ]]
211 AC_ERROR("Unable to find GTK2 or another necessary library. See the previous line for more useful data.")
214 if [[ x"$WITHQTE" != xtrue ]]
216 dnl test for X libraries
217 if test x$no_x = xyes ; then
218 AC_MSG_ERROR([X development libraries not found])
220 X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
224 AC_CHECK_LIB(Xtst, XTestFakeKeyEvent, XTST_LIBS=-lXtst)
225 if test "x$XTST_LIBS" = x; then
227 for xtstpath in /usr/X11R6/lib64 /usr/X11R6/lib /usr/openwin/lib $x_libraries; do
228 LIBS="-L$xtstpath -lXtst"
230 *solaris*) XTST_RPATH_FLAGS="-R$xtstpath" ;;
232 AC_MSG_CHECKING(for -lXtst in $xtstpath)
233 AC_TRY_LINK([], [XTestFakeKeyEvent()], [
235 XTST_LIBS="$XTST_RPATH_FLAGS -L$xtstpath -lXtst"
237 break],[AC_MSG_RESULT(no)])
240 if test "x$XTST_LIBS" = x; then
241 AC_MSG_ERROR(Couldn't find the Xtst library. Check config.log for details)
243 X_LIBS="$X_LIBS $XTST_LIBS"
244 AC_DEFINE(HAVE_XTST, 1, [The XTest extension is present])
250 if [[ x"$DEBUG" = xtrue ]]; then
251 AC_DEFINE([DEBUG], 1, [Additional debug checks enabled])
254 if [[ x"$WITHGNOME" = xtrue ]]; then
255 PKG_CHECK_MODULES(gnome, libgnome-2.0 libgnomeui-2.0 )
256 AC_DEFINE([GNOME_LIBS], 1, [libgnome-2 and libgnomeui-2 are present])
259 if [[ x"$WITHSPEECH" = xtrue ]]; then
260 PKG_CHECK_MODULES(gnome_speech, gnome-speech-1.0 bonobo-activation-2.0 libbonobo-2.0 ORBit-2.0)
261 AC_DEFINE([GNOME_SPEECH], 1, [gnome_speech-1 libraries are present])
262 # SPEECH_SOURCES='speech.$(OBJEXT)'
265 if [[ x"$WITHA11Y" = xtrue ]]; then
266 PKG_CHECK_MODULES(gnome_a11y, bonobo-activation-2.0 libbonobo-2.0 ORBit-2.0 libgnomeui-2.0 cspi-1.0 atk)
267 AC_DEFINE([GNOME_A11Y], 1, [gnome_a11y libraries are present])
270 if [[ x"$WITHJAPANESE" = xtrue ]]; then
271 AC_DEFINE([JAPANESE], 1, [Japanese support enabled])
272 JAPANESE_SOURCES='CannaConversionHelper.$(OBJEXT)'
277 AC_SUBST(JAPANESE_SOURCES)
279 if [[ x"$WITHCHINESE" = xtrue ]]; then
280 AC_DEFINE([CHINESE], 1, [Chinese support enabled])
281 CHINESE_SOURCES='PinYinConversionHelper.$(OBJEXT) PinyinParser.$(OBJEXT)'
287 AC_SUBST(CHINESE_SOURCES)
289 if [[ x"$WITHJOYSTICK" = xtrue ]]; then
290 AC_DEFINE([JOYSTICK], 1, [Linux joystick support enabled])
293 if [[ x"$WITHTILT" = xtrue ]]; then
294 AC_DEFINE([TILT], 1, [Tilt input support enabled])
297 if [[ x"$WITHGPE" = xtrue ]]; then
298 AC_DEFINE([WITH_GPE], 1, [gpe is present])
301 dnl if [[ x"$WITHDARWIN" = xtrue ]]; then
302 dnl AC_DEFINE([WITH_DARWIN], 1, [Targeting Darwin/X11])
305 if [[ x"$WITHMAEMO" = xtrue ]]; then
306 AC_DEFINE([WITH_MAEMO], 1, [Maemo is present])
308 glade_LIBS="/usr/lib/libglade-2.0.a"
309 PKG_CHECK_MODULES(hildon, hildon-libs)
310 AC_CHECK_LIB(osso, osso_initialize,, AC_MSG_ERROR([Osso library not found.]))
313 if [[ x"$WITHMAEMOFULLSCREEN" = xtrue ]]; then
314 AC_DEFINE([WITH_MAEMOFULLSCREEN], 1, [Building as fullscreen Maemo app])
317 if [[ x"$WITHCAIRO" = xtrue ]]; then
318 PKG_CHECK_MODULES(cairo, gtk+-2.0 >= 2.8.0)
319 AC_DEFINE([WITH_CAIRO], 1, [use cairo (needs Gtk+ >= 2.8.0)])
322 if [[ x"$BUILDGTK2" = xtrue ]]; then
323 PKG_CHECK_MODULES(glade, libglade-2.0)
324 if [[ x"$WITHMAEMO" = xtrue ]]; then
326 glade_LIBS=`echo $glade_LIBS | sed s/-lglade-2.0//`
327 glade_LIBS="$glade_LIBS /usr/lib/libglade-2.0.a"
330 PKG_CHECK_MODULES(gthread, gthread-2.0)
333 dnl if [[ x"$WITHMAEMO" = xfalse ]]; then
334 dnl PKG_CHECK_MODULES(wnck, libwnck-1.0)
335 dnl AC_DEFINE([HAVE_WNCK], 1, [wnck is present])
339 # libglade's autoconnect feature requires dasher to be linked with
340 # the --export-dynamic flag. pkg-config does not provide it, and libtool
341 # knows what to do with -export-dynamic.
342 if [[ x"$glade_LIBS" != x ]]; then
343 glade_LIBS="$glade_LIBS -export-dynamic"
346 if [[ x"$GCONF2HERE" = xtrue ]]; then
348 AC_DEFINE([WITH_GCONF], 1, [Use GConf])
351 AC_SUBST(gnome_speech_LIBS)
352 AC_SUBST(gnome_speech_CFLAGS)
353 AC_SUBST([SPEECH_SOURCES])
355 AC_SUBST(gnome_a11y_LIBS)
356 AC_SUBST(gnome_a11y_CFLAGS)
357 AC_SUBST([A11Y_SOURCES])
360 AC_SUBST(gnome_CFLAGS)
363 AC_SUBST(glade_CFLAGS)
365 AC_SUBST(gthread_LIBS)
366 AC_SUBST(gthread_CFLAGS)
369 AC_SUBST(wnck_CFLAGS)
371 AC_SUBST(hildon_LIBS)
372 AC_SUBST(hildon_CFLAGS)
374 AC_SUBST(GETTEXT_PACKAGE)
376 AM_CONDITIONAL(DOGTK2, test x$BUILDGTK2 = xtrue)
377 AM_CONDITIONAL(DOQTE, test x$WITHQTE = xtrue)
378 AM_CONDITIONAL(GNOME_SPEECH, test x$WITHSPEECH = xtrue)
379 AM_CONDITIONAL(GNOME_A11Y, test x$WITHA11Y = xtrue)
380 AM_CONDITIONAL(GNOME_HELP, test x$WITHGNOME = xtrue)
381 AM_CONDITIONAL(WITH_GPE, test x$WITHGPE = xtrue)
382 AM_CONDITIONAL(WITH_MAEMO, test x$WITHMAEMO = xtrue)
383 AM_CONDITIONAL(WITH_MAEMOFULLSCREEN, test x$WITHMAEMOFULLSCREEN = xtrue)
384 AM_CONDITIONAL(JAPANESE, test x$WITHJAPANESE = xtrue)
385 AM_CONDITIONAL(CHINESE, test x$WITHCHINESE = xtrue)
386 AM_CONDITIONAL(JOYSITICK, test x$WITHJOYSTICK = xtrue)
388 AC_SUBST(GTK2_CFLAGS)
391 AC_SUBST(GCONF_CFLAGS)
394 if [[ x"$WITHGPE" = xtrue ]]; then
396 SETTINGS_LIBS="-lgpewidget -lXsettings-client -lXsettings"
398 SETTINGS_CFLAGS=$GCONF_CFLAGS
399 SETTINGS_LIBS=$GCONF_LIBS
401 AC_SUBST(SETTINGS_CFLAGS)
402 AC_SUBST(SETTINGS_LIBS)
404 GTK2BUILD_CFLAGS="$GTK2_CFLAGS $GIO_CFLAGS $SETTINGS_CFLAGS $gthread_CFLAGS $gnome_speech_CFLAGS $gnome_a11y_CFLAGS $glade_CFLAGS $gnome_CFLAGS $wnck_CFLAGS $hildon_CFLAGS"
406 GTK2BUILD_LIBS="$X_LIBS $GTK2_LIBS $GIO_LIBS $SETTINGS_LIBS $gthread_LIBS $gnome_speech_LIBS $gnome_a11y_LIBS $glade_LIBS $gnome_LIBS $wnck_LIBS $hildon_LIBS"
408 AC_SUBST(GTK2BUILD_CFLAGS)
409 AC_SUBST(GTK2BUILD_LIBS)
411 AC_MSG_CHECKING([for gnome-doc-utils])
412 GNOME_DOC_INIT([0.9.0],[have_gdu=yes],[have_gdu=no])
413 AC_MSG_RESULT($have_gdu)
415 if [[ x"$WITHGNOME" = xtrue ]] && [[ x"$have_gdu" = xno ]]; then
416 AC_MSG_ERROR([gnome-doc-utils not found!])
419 AM_CONDITIONAL(ENABLE_SK, test x"$WITHGNOME" = xfalse -a x"$enable_scrollkeeper" = "xyes")
421 AC_CONFIG_FILES([Data/dasher.desktop.in
423 Data/training/Makefile
424 Data/alphabets/Makefile
426 Data/colours/Makefile
427 Data/controllabels/Makefile
429 Data/Help/Gnome/Makefile
435 Src/DasherCore/Makefile
436 Src/DasherCore/LanguageModelling/Makefile
437 Src/DasherIM/Makefile
439 Src/Installer/Makefile
440 Src/InstallerTobii/Makefile
441 Src/InstallerW2K/Makefile