1AC_INIT([imhangul], [2.1.1], [choe.hwanjin@gmail.com], [imhangul])
2
3AC_CONFIG_SRCDIR([.])
4AC_CONFIG_HEADERS(config.h)
5AM_INIT_AUTOMAKE([dist-bzip2])
6
7dnl Checks for programs
8AC_PROG_CC
9AC_PROG_CPP
10AC_PROG_INSTALL
11AM_PROG_CC_C_O
12
13AC_DISABLE_STATIC
14AC_PROG_LIBTOOL
15
16dnl Checks for libraries.
17dnl AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
18PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.2.0,,
19		  AC_MSG_ERROR([im-hangul needs GTK+ 2.2.0 or higher]))
20
21PKG_CHECK_MODULES(LIBHANGUL, libhangul >= 0.0.12,,
22		  AC_MSG_ERROR([im-hangul needs libhangul 0.0.12 or higher]))
23
24dnl Checks for header files.
25AC_HEADER_STDC
26AC_CHECK_HEADERS([libintl.h locale.h string.h])
27
28dnl Checks for typedefs, structures, and compiler characteristics.
29AC_C_CONST
30AC_C_INLINE
31
32dnl Checks for library functions.
33
34# gettext stuff
35ALL_LINGUAS="ko"
36AM_GLIB_GNU_GETTEXT
37
38GETTEXT_PACKAGE="im-hangul"
39AC_SUBST(GETTEXT_PACKAGE)
40AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", gettext package name)
41
42dnl check for gtk binary version
43# GTK_BINARY_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
44# AC_SUBST(GTK_BINARY_VERSION)
45GTK_PREFIX=`$PKG_CONFIG --variable=prefix gtk+-2.0`
46AC_SUBST(GTK_PREFIX)
47GTK_IM_MODULE_DIR=$GTK_PREFIX/lib/gtk-2.0/immodules
48AC_ARG_WITH(gtk-im-module-dir, [  --with-gtk-im-module-dir=DIR gtk im module files dir])
49if test "$with_gtk_im_module_dir" ; then
50    GTK_IM_MODULE_DIR="$with_gtk_im_module_dir"
51fi
52AC_SUBST(GTK_IM_MODULE_DIR)
53
54dnl check for sysconfdir
55GTK_IM_MODULE_FILE="${sysconfdir}/gtk-2.0/gtk.immodules"
56AC_ARG_WITH(gtk-im-module-file, [  --with-gtk-im-module-file=FILE gtk im modules file])
57if test "$with_gtk_im_module_file" ; then
58    GTK_IM_MODULE_FILE="$with_gtk_im_module_file"
59else
60    ac_save_CFLAGS="$CFLAGS"
61    ac_save_LIBS="$LIBS"
62    CFLAGS="$CFLAGS $GTK_CFLAGS"
63    LIBS="$GTK_LIBS $LIBS"
64    rm -f conftest.msg
65    echo -n "checking for GTK_IM_MODULE_FILE... "
66    AC_RUN_IFELSE([AC_LANG_SOURCE([[
67    #include <stdio.h>
68    #include <stdlib.h>
69    #include <gtk/gtk.h>
70    int main(void) {
71	gchar *str;
72	    FILE *file;
73	    unsetenv("GTK_IM_MODULE_FILE");
74	    str = gtk_rc_get_im_module_file();
75	    file = fopen("conftest.msg", "w");
76	    if (file) {
77		    fprintf(file, "%s", str);
78		    fclose(file);
79		    g_free(str);
80		    return 0;
81	    } else {
82		    g_free(str);
83		    return 1;
84	    }
85    }]])],
86    [GTK_IM_MODULE_FILE=`cat conftest.msg`]
87    )
88    echo "${GTK_IM_MODULE_FILE}"
89    rm -f conftest.msg
90    CFLAGS="$ac_save_CFLAGS"
91    LIBS="$ac_save_LIBS"
92    AC_SUBST(GTK_IM_MODULE_FILE)
93fi
94
95dnl default keyboard
96AC_ARG_WITH(default-keyboard, [  --with-default-keyboard=2/39/3f   default hangul keyboard])
97case "$with_default_keyboard" in
98    2)
99	DEFAULT_KEYBOARD="2 beol"
100        AC_DEFINE_UNQUOTED(DEFAULT_KEYBOARD_ID, "2",
101                           [Define default hangul keyboard])
102        ;;
103    39)
104	DEFAULT_KEYBOARD="3 beol 390"
105        AC_DEFINE_UNQUOTED(DEFAULT_KEYBOARD_ID, "39",
106                           [Define default hangul keyboard])
107        ;;
108    3f)
109	DEFAULT_KEYBOARD="3 beol final"
110        AC_DEFINE_UNQUOTED(DEFAULT_KEYBOARD_ID, "3f",
111                           [Define default hangul keyboard])
112        ;;
113    *)
114	DEFAULT_KEYBOARD="2 beol"
115        AC_DEFINE_UNQUOTED(DEFAULT_KEYBOARD_ID, "2",
116                           [Define default hangul keyboard])
117        ;;
118esac
119
120AC_CONFIG_FILES([
121Makefile
122po/Makefile.in
123imhangul.spec
124])
125
126AC_OUTPUT
127
128echo ""
129echo "configuration:"
130echo "	GTK_IM_MODULE_DIR:  $GTK_IM_MODULE_DIR"
131echo "	GTK_IM_MODULE_FILE: $GTK_IM_MODULE_FILE"
132echo "	DEFAULT KEYBOARD:   $DEFAULT_KEYBOARD"
133