Refactory classes, and use sigc++ to make code clear.
[platform/upstream/ibus-libpinyin.git] / configure.ac
1 # vim:set et ts=4:
2 #
3 # ibus-pinyin - The Chinese PinYin engine for IBus
4 #
5 # Copyright (c) 2007-2008 Peng Huang <shawn.p.huang@gmail.com>
6 #
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2, or (at your option)
10 # any later version.
11 #
12 # This program 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 General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
21 # if not 1, append datestamp to the version number.
22 m4_define([ibus_released], [0])
23 m4_define([ibus_major_version], [1])
24 m4_define([ibus_minor_version], [2])
25 m4_define([ibus_micro_version], [99])
26 m4_define(ibus_maybe_datestamp,
27     m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi]))
28
29 m4_define([ibus_version],
30     ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_maybe_datestamp)
31
32 AC_INIT([ibus-pinyin], [ibus_version], [http://code.google.com/p/ibus/issues/entry],[ibus-pinyin])
33 AM_INIT_AUTOMAKE([1.10])
34 AC_GNU_SOURCE
35
36 AC_CONFIG_HEADERS([config.h])
37 AC_CONFIG_MACRO_DIR([m4])
38
39 # define PACKAGE_VERSION_* variables
40 AS_VERSION
41 AS_NANO
42 AM_SANITY_CHECK
43 AM_MAINTAINER_MODE
44 AM_DISABLE_STATIC
45 AC_PROG_CC
46 AC_PROG_CXX
47 AM_PROG_CC_C_O
48 AC_ISC_POSIX
49 AC_HEADER_STDC
50 IT_PROG_INTLTOOL([0.35.0])
51 AM_PROG_LIBTOOL
52
53 # check ibus
54 PKG_CHECK_MODULES(IBUS, [
55     ibus-1.0
56 ])
57
58 # check sqlite
59 PKG_CHECK_MODULES(SQLITE, [
60     sqlite3
61 ])
62
63 # check uuid
64 PKG_CHECK_MODULES(UUID, [
65     uuid
66 ])
67
68 # check uuid
69 PKG_CHECK_MODULES(SIGC, [
70     sigc++-2.0
71 ])
72
73 # check env
74 AC_PATH_PROG(ENV, env)
75 AC_SUBST(ENV)
76
77 #check python
78 AM_PATH_PYTHON([2.5])
79
80 # define GETTEXT_* variables
81 GETTEXT_PACKAGE=ibus-pinyin
82 AC_SUBST(GETTEXT_PACKAGE)
83 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package])
84
85 AM_GLIB_GNU_GETTEXT
86
87 # --enable-db-android
88 AC_ARG_ENABLE(db-android,
89     AS_HELP_STRING([--disable-db-android],
90         [do not build database from pinyin in android]),
91     [enable_db_android=$enableval],
92     [enable_db_android=yes]
93 )
94 AM_CONDITIONAL(IBUS_BUILD_DB_ANDROID, [test x"$enable_db_android" = x"yes" ])
95
96 # --enable-db-open-phrase
97 AC_ARG_ENABLE(db-open-phrase,
98     AS_HELP_STRING([--enable-db-open-phrase],
99         [build open-phrase database]),
100     [enable_db_open_phrase=$enableval],
101     [enable_db_open_phrase=no]
102 )
103 AM_CONDITIONAL(IBUS_BUILD_DB_OPEN_PHRASE, [test x"$enable_db_open_phrase" = x"yes" ])
104
105 # OUTPUT files
106 AC_CONFIG_FILES([ po/Makefile.in
107 Makefile
108 ibus-pinyin.spec
109 src/Makefile
110 src/pinyin.xml.in
111 setup/Makefile
112 setup/ibus-setup-pinyin
113 data/Makefile
114 data/db/Makefile
115 data/db/android/Makefile
116 data/db/open-phrase/Makefile
117 data/icons/Makefile
118 m4/Makefile
119 ])
120
121 AC_OUTPUT
122
123 AC_MSG_RESULT([
124 Build options:
125     Version                     $VERSION
126     Install prefix              $prefix
127     Build database android      $enable_db_android
128     Build database open-phrase  $enable_db_open_phrase
129 ])
130