1 # Process this file with autoconf to produce a configure script
2 #AC_INIT(scim, 1.4.7, suzhe@tsinghua.org.cn)
3 AC_INIT(isf, 6.0.17, isf@samsung.com)
4 AC_CONFIG_SRCDIR([ism/src/scim.h])
6 ###########################################################
7 ## Some definitions of Version macros. ##
8 ###########################################################
15 ISF_VERSION=$ISF_MAJOR_VERSION.$ISF_MINOR_VERSION.$ISF_MICRO_VERSION
17 AC_SUBST(ISF_MAJOR_VERSION)
18 AC_SUBST(ISF_MINOR_VERSION)
19 AC_SUBST(ISF_MICRO_VERSION)
27 SCIM_VERSION=$SCIM_MAJOR_VERSION.$SCIM_MINOR_VERSION.$SCIM_MICRO_VERSION
29 AC_SUBST(SCIM_MAJOR_VERSION)
30 AC_SUBST(SCIM_MINOR_VERSION)
31 AC_SUBST(SCIM_MICRO_VERSION)
32 AC_SUBST(SCIM_VERSION)
34 # libtool versioning for SCIM
36 # increment if the interface has additions, changes, removals.
39 # increment any time the source changes; set to 0 if you increment CURRENT
42 # increment if any interfaces have been added; set to 0
43 # if any interfaces have been removed. removal has
44 # precedence over adding, so set to 0 if both happened.
47 AC_SUBST(SCIM_CURRENT)
48 AC_SUBST(SCIM_REVISION)
51 # Define a string for the earliest version that this release cannot
52 # coexist with. This is used for directory hierarchies.
57 # Define a string for the earliest version that this release has
58 # binary compatibility with. This is used for module locations.
60 SCIM_BINARY_VERSION=1.4.0
61 AC_SUBST(SCIM_BINARY_VERSION)
63 # Define a string for the name of ISF-CONTROL library.
65 ISF_CONTROL=isf-control
68 AC_DEFINE_UNQUOTED(SCIM_BINARY_VERSION, "$SCIM_BINARY_VERSION", [The binary version of SCIM library.])
69 AC_DEFINE_UNQUOTED(SCIM_VERSION, "$SCIM_VERSION", [The release version of SCIM library.])
70 AC_DEFINE_UNQUOTED(SCIM_MAJOR_VERSION, $SCIM_MAJOR_VERSION, [The Major version of SCIM library.])
71 AC_DEFINE_UNQUOTED(SCIM_MINOR_VERSION, $SCIM_MINOR_VERSION, [The Minor version of SCIM library.])
72 AC_DEFINE_UNQUOTED(SCIM_MICRO_VERSION, $SCIM_MICRO_VERSION, [The Micro version of SCIM library.])
75 AC_SUBST(GETTEXT_PACKAGE)
76 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [The gettext domain])
78 ###########################################################
79 ## Start Configuration. ##
80 ###########################################################
82 AC_USE_SYSTEM_EXTENSIONS
86 AM_CONFIG_HEADER([config.h])
92 ALL_LINGUAS="ar as az be_BY bg bn bn_BD ca cs da de el_GR en en_PH en_US es_ES es_MX es_US et eu fa fi fr fr_CA ga gl gu he hi hr hu hy id is it_IT ja_JP ka kk km kn ko_KR ky_KG lo lt lv mg mk ml mn_MN mr ms my_MM my_ZG nb ne nl or pa pl pl_SP pt_BR pt_PT ro ru_RU si sk sl sq sr sv sw ta te tg_TJ th tk_TM tl tr_TR uk ur uz vi xh zh_CN zh_HK zh_TW zh_TW zu"
99 AC_SUBST(LIBTOOL_DEPS)
101 # libtool option to control which symbols are exported
102 # right now, symbols starting with _ are not exported
103 # !!! DO NOT USE IT !!!
104 LIBTOOL_EXPORT_OPTIONS=''
105 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
107 # Checks for programs.
112 # Checks if doxygen is avaiable
115 if test "x$with_doxygen" != "xno"; then
116 AC_PATH_PROG(DOXYGEN, doxygen, no)
119 AM_CONDITIONAL(HAVE_DOXYGEN, test x$DOXYGEN != xno)
122 # Checks if graphviz is available
123 AC_CHECK_PROG(HAVE_GRAPHVIZ, dot, YES, NO)
124 AC_PATH_PROG(DOT, dot)
128 AC_PATH_PROG(PERL, perl)
132 #IT_PROG_INTLTOOL([0.33], [no-xml])
134 # Checks for libraries.
137 AC_CHECK_HEADERS([langinfo.h libintl.h string.h dirent.h hash_map ext/hash_map])
138 AC_CHECK_HEADERS([stdio.h ctype.h errno.h assert.h])
140 # Checks for typedefs, structures, and compiler characteristics.
145 if test x$ac_cv_type_size_t != xyes; then
146 AC_MSG_ERROR([No type size_t, but SCIM needs it!])
149 AC_CHECK_SIZEOF(char)
150 AC_CHECK_SIZEOF(unsigned short int)
151 AC_CHECK_SIZEOF(unsigned int)
152 AC_CHECK_SIZEOF(unsigned long int)
153 AC_CHECK_SIZEOF(unsigned long long int)
154 AC_CHECK_HEADERS([stdint.h],[has_stdint=yes],[has_stdint=no])
156 if test x$ac_cv_sizeof_unsigned_short_int = x2 && test x$ac_cv_sizeof_char = x1 ; then
161 *** sizeof (unsigned short int) == 2
162 *** sizeof (char) == 1
163 *** You might want to consider using the GNU C compiler.
167 if test x$ac_cv_sizeof_wchar_t = x0 ; then
169 *** SCIM requires a compiler that supports wchar_t,
170 *** You might want to consider using the GNU C compiler.
174 if test x$has_stdint = xyes; then
175 INCLUDE_STDINT="#include <stdint.h>"
180 INCLUDE_STDINT="//#include <stdint.h>"
181 UINT16="unsigned short int"
182 if test x$ac_cv_sizeof_unsigned_int = x4; then
183 UINT32="unsigned int"
185 if test x$ac_cv_sizeof_unsigned_long_int = x4; then
186 UINT32="unsigned long int"
188 AC_MSG_ERROR([*** No suitable integer type for uint32 found.])
191 if test x$ac_cv_sizeof_unsigned_long_long_int = x8; then
192 UINT64="unsigned long long int"
194 AC_MSG_ERROR([*** No suitable integer type for uint64 found.])
197 AC_SUBST(INCLUDE_STDINT)
202 # Checks for library functions.
204 AC_CHECK_FUNCS([gettimeofday memmove memset nl_langinfo setlocale daemon])
205 AC_CHECK_FUNCS([memcpy strcmp strchr strrchr])
206 AC_CHECK_FUNCS([opendir closedir readdir])
207 AC_CHECK_FUNCS([usleep nanosleep])
208 AC_CHECK_FUNCS([gethostbyname gethostbyname_r socket bind accept connect listen],
215 PKG_CHECK_MODULES(EINA, [eina])
218 PKG_CHECK_MODULES(ECORE, [ecore])
220 # Check ECORE_IPC library
221 PKG_CHECK_MODULES(ECORE_IPC, [ecore-ipc])
223 # Check ECORE FILE library
224 PKG_CHECK_MODULES(ECORE_FILE, [ecore-file])
226 # Check ECORE FILE library
227 PKG_CHECK_MODULES(ECORE_INPUT, [ecore-input])
229 # Check ECORE EVAS library
230 PKG_CHECK_MODULES(ECORE_EVAS, [ecore-evas])
233 PKG_CHECK_MODULES(ECORE_IMF, [ecore-imf],
234 [ISF_HAS_ECORE_IMF=yes],
235 [ISF_HAS_ECORE_IMF=no])
237 if test "$ISF_HAS_ECORE_IMF" = "yes"; then
238 EFL_LIBDIR=`$PKG_CONFIG --variable=libdir ecore-imf`
239 ECORE_IMF_MODULE_ARCH=`$PKG_CONFIG --variable=module_arch ecore`
240 if test -z "$EFL_LIBDIR)"; then
243 EFL_IM_MODULEDIR=$EFL_LIBDIR/ecore_imf/modules/isf/$ECORE_IMF_MODULE_ARCH
244 WAYLAND_IM_MODULEDIR=$EFL_LIBDIR/ecore_imf/modules/wayland/$ECORE_IMF_MODULE_ARCH
246 AC_SUBST(EFL_IM_MODULEDIR)
247 AC_SUBST(WAYLAND_IM_MODULEDIR)
251 PKG_CHECK_MODULES(EVAS, [evas])
253 # Check ECORE X library
254 PKG_CHECK_MODULES(ECOREX, [ecore-x],
255 [ISF_HAS_ECOREX=yes],
258 if test "$ISF_HAS_ECOREX" = "yes"; then
259 AC_DEFINE(HAVE_ECOREX,1,[Have ecore-x functions.])
262 # Check XKBCOMMON library
263 PKG_CHECK_MODULES(XKBCOMMON, [xkbcommon])
265 # Check ECORE WAYLAND library
266 PKG_CHECK_MODULES(ECORE_WL, [ecore-wl2],
267 [ISF_HAS_ECOREWL=yes],
268 [ISF_HAS_ECOREWL=no])
270 if test "$ISF_HAS_ECOREWL" = "yes"; then
271 AC_DEFINE(HAVE_ECOREWL,1,[Have ecore-wl2 functions.])
274 # Check WAYLAND TEXT INPUT library
275 PKG_CHECK_MODULES(WL_TEXT_INPUT, [text-client])
277 # Check WAYLAND INPUT METHOD library
278 PKG_CHECK_MODULES(WL_INPUT_METHOD, [input-method-client])
281 PKG_CHECK_MODULES(EDJE, [edje])
283 # Check ELEMENTARY library
284 PKG_CHECK_MODULES(ELEMENTARY, [elementary],
288 # Check EFL extension library
289 PKG_CHECK_MODULES(EFL_EXTENSION, [efl-extension])
292 PKG_CHECK_MODULES(GLIB, [glib-2.0])
294 # Check tzplatform-config library
295 PKG_CHECK_MODULES(TZPLATFORM_CONFIG, [libtzplatform-config])
297 PKG_CHECK_MODULES(APPFW_APPLICATION, [capi-appfw-application])
300 PKG_CHECK_MODULES(DLOG, [dlog >= 0])
302 # Check notification library
303 PKG_CHECK_MODULES(NOTIFICATION, [notification],
304 [ISF_HAS_NOTIFICATION=yes],
305 [ISF_HAS_NOTIFICATION=no])
307 # Check system info library
308 PKG_CHECK_MODULES(SYSTEM_INFO, [capi-system-info])
311 PKG_CHECK_MODULES(TTS, [tts],
315 if test "$ISF_HAS_TTS" = "yes"; then
316 AC_DEFINE(HAVE_TTS,1,[Have TTS functions.])
319 # Check cynara liblaries
320 PKG_CHECK_MODULES(CYNARA, [cynara-client, cynara-creds-socket, cynara-session])
322 # Check vconf library
323 PKG_CHECK_MODULES(VCONF, [vconf],
327 # Check edbus library
328 PKG_CHECK_MODULES(EDBUS, [edbus],
332 # Check bluetooth library
333 PKG_CHECK_MODULES(BLUETOOTH, [capi-network-bluetooth],
334 [ISF_HAS_BLUETOOTH=yes],
335 [ISF_HAS_BLUETOOTH=no])
337 # Check feedback library
338 PKG_CHECK_MODULES(FEEDBACK, [feedback],
339 [ISF_HAS_FEEDBACK=yes],
340 [ISF_HAS_FEEDBACK=no])
342 # Check package manager
343 PKG_CHECK_MODULES(PACKAGE_MANAGER, [capi-appfw-package-manager])
346 PKG_CHECK_MODULES(AUL, [aul])
349 PKG_CHECK_MODULES(APP_CONTROL, [capi-appfw-app-control])
351 # Check appfw library
352 PKG_CHECK_MODULES(APPFW, [capi-appfw-application])
354 # Check libwebsockets
355 PKG_CHECK_MODULES(LIBWEBSOCKETS, [libwebsockets],
356 [ISF_HAS_LIBWEBSOCKETS=yes],
357 [ISF_HAS_LIBWEBSOCKETS=no])
359 # Check core package manager
360 PKG_CHECK_MODULES(PKGMGR_INFO, [pkgmgr-info],
361 [ISF_HAS_PKGMGR_INFO=yes],
362 [ISF_HAS_PKGMGR_INFO=no])
364 # Check db-util library
365 PKG_CHECK_MODULES(DB_UTIL, [db-util],
366 [ISF_HAS_DB_UTIL=yes],
367 [ISF_HAS_DB_UTIL=no])
369 # Ignore checked modules if --disable option is added
370 AC_ARG_ENABLE(include-notification,
371 [ --disable-include-notification Do not include notification package],
372 enable_notification=no,
373 enable_notification=yes)
375 AC_ARG_ENABLE(include-libwebsocket,
376 [ --disable-include-libwebsocket Do not include libwebsocket package],
377 enable_libwebsocket=no,
378 enable_libwebsocket=yes)
380 # Check systemd library
381 PKG_CHECK_MODULES(SYSTEMD, [libsystemd],
382 [ISF_HAS_SYSTEMD=yes],
383 [ISF_HAS_SYSTEMD=no])
386 PKG_CHECK_MODULES(GMOCK, [gmock])
388 if test "$ISF_HAS_VCONF" = "yes"; then
389 AC_DEFINE(HAVE_VCONF,1,[Have VConf functions.])
392 if test "$ISF_HAS_BLUETOOTH" = "yes"; then
393 AC_DEFINE(HAVE_BLUETOOTH,1,[Have Bluetooth functions.])
396 if test "$ISF_HAS_FEEDBACK" = "yes"; then
397 AC_DEFINE(HAVE_FEEDBACK,1,[Have Feedback functions.])
400 if test "$ISF_HAS_EDBUS" = "yes"; then
401 AC_DEFINE(HAVE_EDBUS,1,[Have edbus functions.])
404 if test "$ISF_HAS_NOTIFICATION" = "yes" && test "$enable_notification" = "yes"; then
405 AC_DEFINE(HAVE_NOTIFICATION,1,[Have Notification functions.])
408 if test "$enable_notification" = "no"; then
409 AC_MSG_NOTICE([Notification functions force-disabled.])
412 if test "$ISF_HAS_PKGMGR_INFO" = "yes"; then
413 AC_DEFINE(HAVE_PKGMGR_INFO,1,[Have Package manager functions.])
417 PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.4.0 pango >= 1.1.0 gdk-pixbuf-2.0 >= 2.4.0],
422 if test "$SCIM_HAS_GTK2" = "yes"; then
423 if $PKG_CONFIG --exists "gtk+-2.0 >= 2.2" ; then
426 AC_DEFINE(GDK_MULTIHEAD_SAFE,1,[Force use of GDK's multihead-safe APIs.])
428 if $PKG_CONFIG --exists "gtk+-2.0 >= 2.3.5" ; then
431 AC_DEFINE(HAVE_GTK_DRAW_INSERTION_CURSOR,1,[Have gtk_draw_insertion_cursor ().])
433 GTK_BINARY_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
434 GTK_LIBDIR=`$PKG_CONFIG --variable=libdir gtk+-2.0`
435 if test -z "$GTK_LIBDIR)"; then
438 GTK_IM_MODULEDIR=$GTK_LIBDIR/gtk-2.0/$GTK_BINARY_VERSION/immodules
440 AC_SUBST(GTK_IM_MODULEDIR)
441 AC_SUBST(GTK_VERSION)
442 AC_SUBST(GTK_BINARY_VERSION)
445 # Check if we have gthread
446 PKG_CHECK_MODULES(GTHREAD2,[gthread-2.0 >= 2.0.0],
447 [SCIM_HAS_GTHREAD2=yes],
448 [SCIM_HAS_GTHREAD2=no])
450 # Checks for X11 header files.
453 # Add -lX11 to X_LIBS
454 if test "$have_x" = "yes"; then
455 X_LIBS="$X_LIBS -lX11"
462 AM_CONDITIONAL(ARM, test x$TARGET = xARM)
464 ###########################################################
465 ## Definiation of compile args. ##
466 ###########################################################
467 AC_ARG_WITH(gtk-im-module-dir,
468 AS_HELP_STRING([--with-gtk-im-module-dir=dir],
469 [Select gtk immodule dir]),
470 GTK_IM_MODULEDIR=$with_gtk_im_module_dir)
472 AC_ARG_WITH(efl-im-module-dir,
473 AS_HELP_STRING([--with-efl-im-module-dir=dir],
474 [Select efl immodule dir]),
475 EFL_IM_MODULEDIR=$with_efl_im_module_dir)
477 AC_ARG_WITH(wayland-im-module-dir,
478 AS_HELP_STRING([--with-wayland-im-module-dir=dir],
479 [Select wayland immodule dir]),
480 WAYLAND_IM_MODULEDIR=$with_wayland_im_module_dir)
482 AC_ARG_WITH(ro-app-dir,
483 AS_HELP_STRING([--with-ro-app-dir=dir],
484 [Select Read only application dir]),
485 RO_APP_DIR=$with_ro_app_dir)
487 AC_ARG_WITH(ro-packages-dir,
488 AS_HELP_STRING([--with-ro-app-dir=dir],
489 [Select Read only packages dir]),
490 RO_PACKAGES_DIR=$with_ro_packages_dir)
492 AC_ARG_ENABLE(ld-version-script,
493 [ --enable-ld-version-script Use ld version script to limit exported symbols],
494 enable_ld_version_script=yes,
495 enable_ld_version_script=no)
498 [ --enable-debug Turn on debugging],
503 [ --enable-x86 Build for x86 host],
507 AC_ARG_ENABLE(hash-map,
508 [ --enable-hash-map Use hast_map instead of std::map internally],
512 AC_ARG_ENABLE(config-simple,
513 [ --disable-config-simple Do not build Simple Config module],
514 enable_config_simple=no,
515 enable_config_simple=yes)
517 AC_ARG_ENABLE(config-socket,
518 [ --disable-config-socket Do not build Socket Config module],
519 enable_config_socket=no,
520 enable_config_socket=yes)
522 AC_ARG_ENABLE(frontend-x11,
523 [ --disable-frontend-x11 Do not build X11 FrontEnd module],
524 enable_frontend_x11=no,
525 enable_frontend_x11=yes)
527 AC_ARG_ENABLE(frontend-socket,
528 [ --disable-frontend-socket Do not build Socket FrontEnd module],
529 enable_frontend_socket=no,
530 enable_frontend_socket=yes)
532 AC_ARG_ENABLE(im-socket,
533 [ --disable-im-socket Do not build Socket IMEngine module],
535 enable_im_socket=yes)
537 AC_ARG_ENABLE(filter-sctc,
538 [ --disable-filter-sctc Do not build Simplified/Traditional Chinese conversion Filter module],
539 enable_filter_sctc=no,
540 enable_filter_sctc=yes)
542 AC_ARG_ENABLE(gtk2-immodule,
543 [ --disable-gtk2-immodule Do not build GTK2 IMModule],
544 enable_gtk2_immodule=no,
545 enable_gtk2_immodule=yes)
547 AC_ARG_ENABLE(efl-immodule,
548 [ --disable-efl-immodule Do not build EFL IMModule],
549 enable_efl_immodule=no,
550 enable_efl_immodule=yes)
552 AC_ARG_ENABLE(wayland-immodule,
553 [ --disable-wayland-immodule Do not build Wayland IMModule],
554 enable_wayland_immodule=no,
555 enable_wayland_immodule=yes)
557 AC_ARG_ENABLE(panel-efl,
558 [ --disable-panel-efl Do not build EFL Panel],
560 enable_panel_efl=check)
562 AC_ARG_ENABLE(open-input,
563 [ --disable-open-input Do not build Open Input],
564 enable_open_input=no,
565 enable_open_input=check)
567 AC_ARG_ENABLE(tray-icon,
568 [ --disable-tray-icon Do not build Tray Icon],
570 enable_tray_icon=yes)
572 AC_ARG_ENABLE(multiwindow-support,
573 [ --disable-multiwindow-support Do not build Multiwindow Support],
574 enable_multiwindow_support=no,
575 enable_multiwindow_support=yes)
577 AC_ARG_ENABLE(lazy-launch,
578 [ --enable-lazy-launch Launch ISF when focusing in entry],
579 enable_lazy_launch=yes,
580 enable_lazy_launch=no)
582 AC_ARG_ENABLE(ime-embed-app,
583 [ --disable-ime-embed-app Do not load IME in application when socket invalidate],
584 enable_ime_embed_app=no,
585 enable_ime_embed_app=yes)
587 AC_ARG_ENABLE(candidate-ui,
588 [ --disable-candidate-ui Do not build Candidate UI],
589 enable_candidate_ui=no,
590 enable_candidate_ui=check)
592 if test "$have_x" = "yes"; then
593 SCIM_BUILD_X11_UTILS=1
596 SCIM_BUILD_X11_UTILS=0
600 if test "$enable_hash_map" = "yes"; then
601 AC_DEFINE(ENABLE_HASH_MAP,1,[Use hash map instead of map in libscim])
604 if test "$enable_debug" = "yes"; then
605 AC_DEFINE(ENABLE_DEBUG,1,[Define this to enable the debug facility in libscim])
607 CXXFLAGS="$CXXFLAGS -g"
610 if test "$enable_x86" = "yes"; then
611 AC_DEFINE(ENABLE_X86_HOST,1,[Build for x86 host])
614 if test "$enable_tests" = "yes"; then
621 if test "$enable_config_simple" = "yes"; then
622 SCIM_BUILD_CONFIG_SIMPLE=1
624 SCIM_BUILD_CONFIG_SIMPLE=0
625 enable_config_simple=no
628 if test "$enable_config_socket" = "yes" -a "$socket_ok" = "yes"; then
629 SCIM_BUILD_CONFIG_SOCKET=1
631 SCIM_BUILD_CONFIG_SOCKET=0
632 enable_config_socket=no
635 if test "$enable_frontend_x11" = "yes" -a "$have_x" = "yes"; then
636 SCIM_BUILD_FRONTEND_X11=1
638 SCIM_BUILD_FRONTEND_X11=0
639 enable_frontend_x11=no
642 if test "$enable_frontend_socket" = "yes" -a "$socket_ok" = "yes"; then
643 SCIM_BUILD_FRONTEND_SOCKET=1
645 SCIM_BUILD_FRONTEND_SOCKET=0
646 enable_frontend_socket=no
649 if test "$enable_im_rawcode" = "yes"; then
650 SCIM_BUILD_IMENGINE_RAWCODE=1
652 SCIM_BUILD_IMENGINE_RAWCODE=0
656 if test "$enable_im_socket" = "yes" -a "$socket_ok" = "yes"; then
657 SCIM_BUILD_IMENGINE_SOCKET=1
659 SCIM_BUILD_IMENGINE_SOCKET=0
663 if test "$enable_filter_sctc" = "yes"; then
664 SCIM_BUILD_FILTER_SCTC=1
666 SCIM_BUILD_FILTER_SCTC=0
667 enable_filter_sctc=no
670 if test "$enable_gtk2_immodule" = "yes" -a "$SCIM_HAS_GTK2" = "yes"; then
671 SCIM_BUILD_GTK2_IMMODULE=1
673 SCIM_BUILD_GTK2_IMMODULE=0
674 enable_gtk2_immodule=no
677 if test "$SCIM_HAS_GTK2" = "yes"; then
679 SCIM_BUILD_GTK_UTILS=1
682 SCIM_BUILD_GTK_UTILS=0
685 if test "$enable_tray_icon" = "yes"; then
686 if test "$SCIM_HAS_GTK2_2" = "yes" -a "$no_x" != "yes"; then
688 AC_DEFINE(ENABLE_TRAY_ICON,1,[Enable the TrayIcon code.])
694 if test "$enable_multiwindow_support" = "yes"; then
695 enable_multiwindow_support=yes
696 AC_DEFINE(ENABLE_MULTIWINDOW_SUPPORT,1,[Enable the Multi Window code.])
698 enable_multiwindow_support=no
701 if test "$enable_efl_immodule" = "yes" -a "$ISF_HAS_ECORE_IMF" = "yes"; then
702 ISF_BUILD_EFL_IMMODULE=1
704 ISF_BUILD_EFL_IMMODULE=0
705 enable_efl_immodule=no
708 if test "$enable_wayland_immodule" = "yes" -a "$ISF_HAS_ECORE_IMF" = "yes"; then
709 ISF_BUILD_WAYLAND_IMMODULE=1
711 ISF_BUILD_WAYLAND_IMMODULE=0
712 enable_wayland_immodule=no
715 ISF_BUILD_PANEL_EFL=0
716 ISF_BUILD_CANDIDATE_UI=0
717 if test "$enable_panel_efl" != "no"; then
719 if test "$ISF_HAS_ELM" = "yes"; then
720 ISF_BUILD_PANEL_EFL=1
722 if test "$enable_candidate_ui" = "yes"; then
723 ISF_BUILD_CANDIDATE_UI=1
724 enable_candidate_ui=yes
726 enable_candidate_ui=no
729 enable_candidate_ui=no
732 enable_candidate_ui=no
735 ISF_BUILD_OPEN_INPUT=0
736 ISF_BUILD_REMOTE_INPUT=0
737 if test "$enable_remote_input" = "yes"; then
738 ISF_BUILD_REMOTE_INPUT=1
739 enable_remote_input=yes
740 AC_DEFINE(ENABLE_REMOTE_INPUT,1,[Enable remote input.])
741 if test "$enable_open_input" = "yes" && test "$ISF_HAS_LIBWEBSOCKETS" = "yes" && test "$enable_libwebsocket" = "yes"; then
742 ISF_BUILD_OPEN_INPUT=1
743 enable_open_input=yes
744 AC_DEFINE(ENABLE_OPEN_INPUT,1,[Enable open input.])
749 if test "$enable_libwebsocket" = "no"; then
750 AC_MSG_NOTICE([LIBWEBSOCKET forced disable.])
754 enable_remote_input=no
757 #if nothing needs libscim-gtkutils, just disable it
758 if test "$enable_panel_gtk" != "yes"; then
760 SCIM_BUILD_GTK_UTILS=0
763 AM_CONDITIONAL(HAVE_X,
764 [test "$have_x" = "yes"])
766 if test "$enable_lazy_launch" = "yes"; then
767 AC_DEFINE(ENABLE_LAZY_LAUNCH,1,[Launch ISF when focusing in entry])
768 ISF_INSTALL_SYSTEMD_SCRIPT=0
770 ISF_INSTALL_SYSTEMD_SCRIPT=1
773 if test "$enable_ime_embed_app" = "yes"; then
774 AC_DEFINE(ENABLE_IME_EMBED_APP,1,[Load imengine in application side when socket invalidate])
777 AM_CONDITIONAL(SCIM_LD_VERSION_SCRIPT,
778 [test "$enable_ld_version_script" = "yes"])
780 AM_CONDITIONAL(SCIM_BUILD_TESTS,
781 [test "$enable_tests" = "yes"])
783 AM_CONDITIONAL(SCIM_BUILD_CONFIG_SIMPLE,
784 [test "$enable_config_simple" = "yes"])
786 AM_CONDITIONAL(SCIM_BUILD_CONFIG_SOCKET,
787 [test "$enable_config_socket" = "yes"])
789 AM_CONDITIONAL(SCIM_BUILD_FRONTEND_X11,
790 [test "$enable_frontend_x11" = "yes"])
792 AM_CONDITIONAL(SCIM_BUILD_FRONTEND_SOCKET,
793 [test "$enable_frontend_socket" = "yes"])
795 AM_CONDITIONAL(SCIM_BUILD_IMENGINE_SOCKET,
796 [test "$enable_im_socket" = "yes"])
798 AM_CONDITIONAL(SCIM_BUILD_IMENGINE_RAWCODE,
799 [test "$enable_im_rawcode" = "yes"])
801 AM_CONDITIONAL(SCIM_BUILD_GTK2_IMMODULE,
802 [test "$enable_gtk2_immodule" = "yes"])
804 AM_CONDITIONAL(SCIM_BUILD_FILTER_SCTC,
805 [test "$enable_filter_sctc" = "yes"])
807 AM_CONDITIONAL(SCIM_BUILD_GTK_UTILS,
808 [test "$enable_gtk_utils" = "yes"])
810 AM_CONDITIONAL(SCIM_BUILD_X11_UTILS,
811 [test "$enable_x11_utils" = "yes"])
813 AM_CONDITIONAL(SCIM_BUILD_TRAY_ICON,
814 [test "$enable_tray_icon" = "yes"])
816 AM_CONDITIONAL(ISF_BUILD_EFL_IMMODULE,
817 [test "$enable_efl_immodule" = "yes"])
819 AM_CONDITIONAL(ISF_BUILD_WAYLAND_IMMODULE,
820 [test "$enable_wayland_immodule" = "yes"])
822 AM_CONDITIONAL(ISF_BUILD_PANEL_EFL,
823 [test "$enable_panel_efl" = "yes"])
825 AM_CONDITIONAL(ISF_BUILD_REMOTE_INPUT,
826 [test "$enable_remote_input" = "yes"])
828 AM_CONDITIONAL(ISF_BUILD_OPEN_INPUT,
829 [test "$enable_open_input" = "yes"])
831 AM_CONDITIONAL(ISF_BUILD_DB_UTIL,
832 [test "$ISF_HAS_DB_UTIL" = "yes"])
834 AM_CONDITIONAL(ISF_INSTALL_SYSTEMD_SCRIPT,
835 [test "$enable_lazy_launch" = "no"])
837 AM_CONDITIONAL(ISF_BUILD_CANDIDATE_UI,
838 [test "$enable_candidate_ui" = "yes"])
840 AC_SUBST(SCIM_BUILD_TESTS)
841 AC_SUBST(SCIM_BUILD_CONFIG_SIMPLE)
842 AC_SUBST(SCIM_BUILD_CONFIG_SOCKET)
843 AC_SUBST(SCIM_BUILD_FRONTEND_X11)
844 AC_SUBST(SCIM_BUILD_FRONTEND_SOCKET)
845 AC_SUBST(SCIM_BUILD_IMENGINE_RAWCODE)
846 AC_SUBST(SCIM_BUILD_IMENGINE_TABLE)
847 AC_SUBST(SCIM_BUILD_IMENGINE_SOCKET)
848 AC_SUBST(SCIM_BUILD_FILTER_SCTC)
849 AC_SUBST(SCIM_BUILD_GTK2_IMMODULE)
850 AC_SUBST(SCIM_BUILD_SCIM_SETUP)
851 AC_SUBST(SCIM_BUILD_GTK_UTILS)
852 AC_SUBST(SCIM_BUILD_X11_UTILS)
853 AC_SUBST(ISF_BUILD_EFL_IMMODULE)
854 AC_SUBST(ISF_BUILD_PANEL_EFL)
855 AC_SUBST(ISF_BUILD_REMOTE_INPUT)
856 AC_SUBST(ISF_BUILD_OPEN_INPUT)
857 AC_SUBST(ISF_BUILD_DB_UTIL)
858 AC_SUBST(ISF_INSTALL_SYSTEMD_SCRIPT)
859 AC_SUBST(ISF_BUILD_KBD_MODE_CHANGER)
860 AC_SUBST(ISF_BUILD_CANDIDATE_UI)
862 ISF_BUILDING_DLL="-DISF_BUILDING_DLL"
863 AC_SUBST(ISF_BUILDING_DLL)
865 # Output All necessary Paths.
866 SCIM_BINDIR="$prefix/bin"
867 SCIM_DATADIR="$datadir/scim"
868 SCIM_SYSCONFDIR="$sysconfdir"
869 SCIM_ICONDIR="$datadir/scim/icons"
870 SCIM_MODULE_PATH="$libdir/scim$SCIM_EPOCH"
871 SCIM_LIBEXECDIR="$libdir/scim$SCIM_EPOCH"
872 SCIM_LOCALEDIR="/usr/share/locale"
873 SCIM_TEMPDIR="/run/.isf"
875 AC_SUBST(SCIM_BINDIR)
876 AC_SUBST(SCIM_DATADIR)
877 AC_SUBST(SCIM_SYSCONFDIR)
878 AC_SUBST(SCIM_ICONDIR)
879 AC_SUBST(SCIM_MODULE_PATH)
880 AC_SUBST(SCIM_LIBEXECDIR)
881 AC_SUBST(SCIM_LOCALEDIR)
882 AC_SUBST(SCIM_TEMPDIR)
885 AC_SUBST(RO_PACKAGES_DIR)
887 ###########################################################
889 ###########################################################
891 AC_CONFIG_FILES([Makefile
897 ism/data/icons/Makefile
898 ism/data/pixmaps/Makefile
900 ism/modules/frontend/imdkit/Makefile
901 ism/modules/frontend/Makefile
902 ism/modules/imengine/Makefile
903 ism/modules/filter/Makefile
904 ism/modules/config/Makefile
905 ism/modules/panelagent/ecoresocket/Makefile
906 ism/modules/panelagent/wayland/Makefile
907 ism/modules/panelagent/socketconfigserver/Makefile
910 ism/extras/gtk2_immodule/Makefile
911 ism/extras/efl_immodule/Makefile
912 ism/extras/wayland_immodule/Makefile
913 ism/extras/efl_panel/Makefile
914 ism/extras/kbd_mode_changer/Makefile
915 ism/extras/pkgmgr_parser/Makefile
932 Install prefix $prefix
933 Build shared libs $enable_shared
934 Build static libs $enable_static
935 Enable debug $enable_debug
936 Build for x86 host $enable_x86
937 Enable ld version script $enable_ld_version_script
940 Simple config module $enable_config_simple
941 Socket config module $enable_config_socket
943 X11 FrontEnd module $enable_frontend_x11
944 Socket FrontEnd module $enable_frontend_socket
946 Socket IMEngine module $enable_im_socket
948 SCTC Filter module $enable_filter_sctc
950 GTK2 Utility Library $enable_gtk_utils
951 X11 Utility Library $enable_x11_utils
953 GTK2 IMModule $enable_gtk2_immodule
954 GTK2 IMModule dir $GTK_IM_MODULEDIR
956 EFL IMModule $enable_efl_immodule
957 EFL IMModule dir $EFL_IM_MODULEDIR
959 Wayland IMModule $enable_wayland_immodule
960 Wayland IMModule dir $WAYLAND_IM_MODULEDIR
962 EFL Panel GUI $enable_panel_efl
963 EFL Panel Candidate GUI $enable_candidate_ui
965 Enable TrayIcon $enable_tray_icon
966 Enable MultiWindow $enable_multiwindow_support
967 Enable LazyLaunch $enable_lazy_launch
968 Enable IME Embed $enable_ime_embed_app
969 Enable Remote Input $enable_remote_input
970 Enable OpenInput $enable_open_input