5 # Copyright (c) 2007-2008 Huang Peng <shawn.p.huang@gmail.com>
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2 of the License, or (at your option) any later version.
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this program; if not, write to the
19 # Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20 # Boston, MA 02111-1307 USA
22 # if not 1, append datestamp to the version number.
23 m4_define([ibus_released], [0])
24 m4_define([ibus_major_version], [0])
25 m4_define([ibus_minor_version], [1])
26 m4_define([ibus_micro_version], [1])
27 m4_define(ibus_maybe_datestamp,
28 m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi]))
30 m4_define([ibus_version],
31 ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_maybe_datestamp)
33 AC_INIT([ibus], [ibus_version], [http://code.google.com/p/ibus/issues/entry],[ibus])
34 AM_INIT_AUTOMAKE([1.10])
37 AC_CONFIG_HEADERS([config.h])
38 AC_CONFIG_MACRO_DIR([m4])
40 # define PACKAGE_VERSION_* variables
53 AC_CHECK_HEADERS([sys/inotify.h])
57 PKG_CHECK_MODULES(GLIB2, [
60 PKG_CHECK_MODULES(GOBJECT2, [
65 # check gtk, gdk & pygtk
66 PKG_CHECK_MODULES(GTK2, [
70 gtk_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
71 GTK_IM_MODULEDIR="$libdir"/gtk-2.0/$gtk_binary_version/immodules
73 PKG_CHECK_MODULES(GDK2, [
78 PKG_CHECK_MODULES(DBUS, [
84 [QtCore >= 4.4.0 QtDBus >= 4.4.0],
89 if test x"$IBUS_HAS_QT4" == x"yes"; then
90 QMAKE=`$PKG_CONFIG --variable=qmake Qt`
91 if test x"$QMAKE" == x""; then
92 AC_PATH_PROG(QMAKE, qmake-qt4)
94 if test x"$QMAKE" == x""; then
95 AC_PATH_PROG(QMAKE, qmake)
97 if test x"$QMAKE" == x""; then
99 AC_MSG_WARN([Can not find qmake.])
105 PKG_CHECK_MODULES(X11, [
109 AC_CHECK_HEADERS([X11/XKBlib.h])
112 AC_PATH_PROG(ENV, env)
117 AM_PATH_PYTHON([2.5])
118 AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
119 if test x"$PYTHON_CONFIG" == x""; then
120 AC_PATH_PROG(PYTHON_CONFIG, python-config)
122 if test x"$PYTHON_CONFIG" != x""; then
123 PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
124 PYTHON_LIBS=`$PYTHON_CONFIG --libs`
126 PYTHON_CFLAGS=`$PYTHON $srcdir/python-config.py --includes`
127 PYTHON_LIBS=`$PYTHON $srcdir/python-config.py --libs`
129 PYTHON_INCLUDES="$PYTHON_CFLAGS"
130 AC_SUBST(PYTHON_CFLAGS)
131 AC_SUBST(PYTHON_INCLUDES)
132 AC_SUBST(PYTHON_LIBS)
135 # define GETTEXT_* variables
137 AC_SUBST(GETTEXT_PACKAGE)
138 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define to the read-only architecture-independent data directory.])
140 AM_GNU_GETTEXT([external])
141 AM_GNU_GETTEXT_VERSION(0.16.1)
144 # define configure arguments
145 AC_ARG_WITH(gtk-im-module-dir,
146 AS_HELP_STRING([--with-gtk-im-module-dir[=DIR]],
147 [Select gtk immodule dir]),
148 GTK_IM_MODULEDIR=$with_gtk_im_module_dir
150 AC_SUBST(GTK_IM_MODULEDIR)
152 AC_ARG_ENABLE(qt4-immodule,
153 AS_HELP_STRING([--disable-qt4-immodule],
154 [do not build qt4 immodule]),
155 [enable_qt4=$enableval],
158 if test x"$IBUS_HAS_QT4" != x"yes"; then
161 AM_CONDITIONAL(IBUS_BUILD_QT4, [test x"$enable_qt4" = x"yes" ])
163 # check pygtk gconf for pygconf
164 AC_ARG_ENABLE(pygconf,
165 AS_HELP_STRING([--enable-pygconf],
166 [Build python gconf binding, with it ibus will not depend on gnome-python]),
167 [enable_pygconf=$enableval],
171 PKG_CHECK_MODULES(PYGTK,
173 [IBUS_HAS_PYGTK=yes],
176 AC_SUBST(PYGTK_CFLAGS)
178 if test x"$IBUS_HAS_PYGTK" != x"yes" -a x"$enable_pygconf" = x"yes"; then
179 AC_MSG_ERROR(can not build python gconf binding without pygtk-2.0)
182 AC_PATH_PROG(PYGTK_CODEGEN, pygtk-codegen-2.0, no)
183 if test x"$PYGTK_CODEGEN" = x"no" -a x"$enable_pygconf" = x"yes"; then
184 AC_MSG_ERROR(can not build python gconf binding without pygtk-codegen-2.0)
187 PKG_CHECK_MODULES(GCONF,
188 [gconf-2.0 >= 2.11.1],
189 [IBUS_HAS_GCONF=yes],
192 AC_SUBST(GCONF_CFLAGS)
194 if test x"$IBUS_HAS_GCONF" != x"yes" -a x"$enable_pygconf" = x"yes"; then
195 AC_MSG_ERROR(can not build python gconf binding without gconf-2.0)
198 AM_CONDITIONAL(IBUS_BUILD_PYGCONF, [test x"$enable_pygconf" = x"yes" ])
201 AC_ARG_ENABLE(iso-codes-check,
202 AS_HELP_STRING([--disable-iso-codes-check],
203 [Do not check iso-codes]),
204 [enable_iso_codes_check=$enableval],
205 [enable_iso_codes_check=yes],
207 PKG_CHECK_MODULES(ISOCODES,
209 [IBUS_HAS_ISOCODES=yes],
210 [IBUS_HAS_ISOCODES=no],
212 if test x"$IBUS_HAS_ISOCODES" != x"yes"; then
213 if test x"$enable_iso_codes_check" != x"no"; then
214 AC_MSG_ERROR([can not find iso-codes. Please install iso-codes or configure with --disable-iso-codes-check])
216 AC_MSG_WARN([can not find iso-codes. It is required.])
221 AC_CONFIG_FILES([ po/Makefile.in
226 ibus/interface/Makefile
230 launcher/ibus.desktop
245 setup/ibus-setup.desktop
257 Install prefix $prefix
258 Build shared libs $enable_shared
259 Build static libs $enable_static
260 Gtk immodule dir $GTK_IM_MODULEDIR
261 Enable Qt4 IM module $enable_qt4
262 Build pygconf $enable_pygconf