# vim:set et ts=4: # # ibus-libpinyin - Intelligent Pinyin engine based on libpinyin for IBus # # Copyright (c) 2008-2010 Peng Huang # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # if not 1, append datestamp to the version number. m4_define([ibus_released], [1]) m4_define([ibus_major_version], [1]) m4_define([ibus_minor_version], [6]) m4_define([ibus_micro_version], [92]) m4_define(ibus_maybe_datestamp, m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi])) m4_define([ibus_version], ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_maybe_datestamp) AC_INIT([ibus-libpinyin], [ibus_version], [https://github.com/libpinyin/ibus-libpinyin/issues/new],[ibus-libpinyin]) AM_INIT_AUTOMAKE([1.10]) AC_GNU_SOURCE AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) # define PACKAGE_VERSION_* variables AS_VERSION AS_NANO AM_SANITY_CHECK AM_MAINTAINER_MODE AM_DISABLE_STATIC AC_PROG_CC AC_PROG_CXX AM_PROG_CC_C_O AC_ISC_POSIX AC_HEADER_STDC IT_PROG_INTLTOOL([0.35.0]) AM_PROG_LIBTOOL AC_PROG_SED # check ibus PKG_CHECK_MODULES(IBUS, [ ibus-1.0 >= 1.4.0 ]) # check sqlite PKG_CHECK_MODULES(SQLITE, [ sqlite3 ]) AC_PATH_PROG(SQLITE3, sqlite3) PKG_CHECK_MODULES(LIBPINYIN, [ libpinyin >= 0.9.91 ], [enable_libpinyin=yes]) AM_CONDITIONAL(IBUS_BUILD_LIBPINYIN, [test x"$enable_libpinyin" = x"yes"]) LIBPINYIN_DATADIR=`$PKG_CONFIG --variable=pkgdatadir libpinyin` AC_SUBST(LIBPINYIN_DATADIR) # check uuid AC_CHECK_FUNCS([uuid_create], [], [ PKG_CHECK_MODULES(LIBUUID, uuid, [ # uuid.pc exist AC_DEFINE(HAVE_LIBUUID, 1, [Define if found libuuid]) HAVE_LIBUUID=yes ], [ # uuid.pc does not exist uuid_old_LIBS=$LIBS AC_CHECK_HEADERS(uuid/uuid.h, [ AC_SEARCH_LIBS(uuid_generate, uuid, [ test x"$ac_cv_search_uuid_generate" != x"none required" && LIBUUID_LIBS=$ac_cv_search_uuid_generate AC_DEFINE(HAVE_LIBUUID, 1, [Define if found libuuid]) HAVE_LIBUUID=yes ], [ AC_MSG_ERROR([Can not find uuid_create and uuid_generate in libc or libuuid]) ]) ], [ AC_MSG_ERROR([Can not find uuid_create and uuid_generate in libc or libuuid]) ]) LIBS=$uuid_old_LIBS ]) ]) AM_CONDITIONAL(HAVE_LIBUUID, test x"$HAVE_LIBUUID" = x"yes") # check if ibus_config_get_values, which is available in ibus-1.3.99+ (git master) save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $IBUS_CFLAGS" LIBS="$LIBS $IBUS_LIBS" AC_CHECK_FUNCS([ibus_config_get_values]) CFLAGS="$save_CFLAGS" LIBS="$save_LIBS" # check env AC_PATH_PROG(ENV, env) AC_SUBST(ENV) # check python AM_PATH_PYTHON([2.5]) # --enable-boost AC_ARG_ENABLE(boost, AC_HELP_STRING([--enable-boost], [Use boost to replace stdc++0x.]), [enable_boost=$enableval], [enable_boost=no] ) if test x"$enable_boost" = x"yes"; then # check boost BOOST_REQUIRE([1.39]) BOOST_FIND_HEADER([boost/bind.hpp]) BOOST_FIND_HEADER([boost/signals2.hpp]) fi AM_CONDITIONAL(HAVE_BOOST, test x"$enable_boost" = x"yes") # --enable-opencc AC_ARG_ENABLE(opencc, AC_HELP_STRING([--enable-opencc], [Use opencc for simplified and traditional Chinese conversion]), [enable_opencc=$enableval], [enable_opencc=no] ) if test x"$enable_opencc" = x"yes"; then # check opencc PKG_CHECK_MODULES(OPENCC, [opencc], [ AC_DEFINE(HAVE_OPENCC, 1, [Define if found opencc]) ]) fi # define GETTEXT_* variables GETTEXT_PACKAGE=ibus-libpinyin AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package]) AM_GLIB_GNU_GETTEXT # --disable-lua-extension AC_ARG_ENABLE(lua-extension, AS_HELP_STRING([--disable-lua-extension], [do not build lua extension]), [enable_lua_extension=$enableval], [enable_lua_extension=yes] ) # check lua PKG_CHECK_MODULES(LUA, [ lua >= 5.1 ], [], [has_lua_extension=no] ) if test x"$has_lua_extension" = x"no"; then PKG_CHECK_MODULES(LUA, [ lua5.1 ], [], [enable_lua_extension=no] ); fi AM_CONDITIONAL(IBUS_BUILD_LUA_EXTENSION, [test x"$enable_lua_extension" = x"yes"]) # --disable-english-input-mode AC_ARG_ENABLE(english-input-mode, AS_HELP_STRING([--disable-english-input-mode], [do not build english input mode]), [enable_english_input_mode=$enableval], [enable_english_input_mode=yes] ) AM_CONDITIONAL(IBUS_BUILD_ENGLISH_INPUT_MODE, [test x"$enable_english_input_mode" = x"yes"]) # --disable-stroke-input-mode AC_ARG_ENABLE(stroke-input-mode, AS_HELP_STRING([--disable-stroke-input-mode], [do not build stroke input mode]), [enable_stroke_input_mode=$enableval], [enable_stroke_input_mode=yes] ) AM_CONDITIONAL(IBUS_BUILD_STROKE_INPUT_MODE, [test x"$enable_stroke_input_mode" = x"yes"]) # OUTPUT files AC_CONFIG_FILES([ po/Makefile.in Makefile ibus-libpinyin.spec lua/Makefile src/Makefile src/libpinyin.xml.in setup/Makefile setup/ibus-setup-libpinyin setup/config.py data/Makefile data/icons/Makefile m4/Makefile ]) AC_OUTPUT AC_MSG_RESULT([ Build options: Version $VERSION Install prefix $prefix Use boost $enable_boost Use opencc $enable_opencc Use libpinyin $enable_libpinyin Build lua extension $enable_lua_extension Build stroke input mode $enable_stroke_input_mode Build english input mode $enable_english_input_mode ])