1include libtool-version.mk
2
3sscmlibdir = ${pkgdatadir}/lib
4SSCM_DEFS = -DSCMLIBDIR="\"$(sscmlibdir)\""
5DEFS += $(SSCM_DEFS)
6
7AUTOMAKE_OPTIONS = foreign
8
9EXTRA_DIST = encoding-table.c test-gc.c version.h.in
10
11uim_defs = -DSCM_FILES=\"$(datadir)/uim\"
12# FIXME: $(UIM_SCM_CFLAGS) should only affect on uim-scm.c
13CFLAGS = @CFLAGS@ $(UIM_SCM_CFLAGS)
14CXXFLAGS = @CXXFLAGS@
15
16lib_LTLIBRARIES = libuim-scm.la libuim.la libuim-custom.la
17noinst_LTLIBRARIES = libuim-bsdlook.la
18if LIBUIM_X_UTIL
19noinst_LTLIBRARIES += libuim-x-util.la
20endif
21noinst_LTLIBRARIES += libuim-counted-init.la
22
23# Although uim only needs *.so for the plugins, whether *.la is
24# installed or not is system-dependent and uim leaves it untouched. It
25# will installed with normal libtool, or may not installed depending
26# on the ltmain the system uses. For example, FreeBSD's libtool does
27# not. Likewise it, *.a is also untouched other than libtool's
28# package-global 'static' configuration since no partial disabling of
29# static libraaries is supported by libtool. And no violent rm of *.a
30# and *.la is performed to avoid system-dependent unexpected
31# result. It's libtool's responsibility.  -- YamaKen 2006-05-20
32uim_plugin_LTLIBRARIES =
33uim_plugindir = $(pkglibdir)/plugin
34
35BUILT_SOURCES = sigscheme-combined
36.PHONY: sigscheme-combined
37sigscheme-combined:
38	$(MAKE) $(AM_MAKEFLAGS) -C $(top_builddir)/sigscheme/src combined
39
40pkginclude_HEADERS = uim-scm.h uim-scm-abbrev.h uim.h \
41		uim-util.h uim-posix.h dynlib.h \
42		uim-helper.h uim-im-switcher.h \
43		uim-custom.h
44nodist_pkginclude_HEADERS = version.h
45# Install even if !NOTIFY since plugins will need this to use
46# uim_notify_{info,fatal}().  -- YamaKen 2008-02-12
47pkginclude_HEADERS += uim-notify.h
48
49libuim_la_SOURCES = \
50		uim-internal.h uim-error.c uim.c \
51		uim-key.c uim-func.c uim-util.c uim-posix.c \
52		uim-iconv.h iconv.c dynlib.c \
53		uim-ipc.c uim-helper.c uim-helper-client.c \
54		gettext.h intl.c \
55		rk.c
56
57uim_plugin_LTLIBRARIES += libuim-fileio.la
58libuim_fileio_la_SOURCES = fileio.c
59libuim_fileio_la_LIBADD = libuim-scm.la libuim.la
60libuim_fileio_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
61libuim_fileio_la_CPPFLAGS = -I$(top_srcdir)
62
63uim_plugin_LTLIBRARIES += libuim-socket.la
64libuim_socket_la_SOURCES = socket.c
65libuim_socket_la_LIBADD = libuim-scm.la libuim.la
66libuim_socket_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
67libuim_socket_la_CPPFLAGS = -I$(top_srcdir)
68
69uim_plugin_LTLIBRARIES += libuim-process.la
70libuim_process_la_SOURCES = process.c
71libuim_process_la_LIBADD = libuim-scm.la libuim.la
72libuim_process_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
73libuim_process_la_CPPFLAGS = -I$(top_srcdir)
74
75if NOTIFY
76libuim_la_SOURCES += uim-notify.c
77endif
78
79libuim_custom_la_SOURCES = uim-custom.c
80
81if M17NLIB
82  uim_plugin_LTLIBRARIES += libuim-m17nlib.la
83  libuim_m17nlib_la_SOURCES = m17nlib.c
84  libuim_m17nlib_la_LIBADD = @M17NLIB_LIBS@ -luim-scm -luim
85  libuim_m17nlib_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
86  libuim_m17nlib_la_CPPFLAGS = -I$(top_srcdir) @M17NLIB_CFLAGS@
87endif
88
89if WNN
90uim_plugin_LTLIBRARIES += libuim-wnn.la
91libuim_wnn_la_SOURCES = wnnlib.h wnnlib.c
92libuim_wnn_la_LIBADD = libuim.la $(WNN_LIBS) -lwnn @WNN_LIBADD@
93libuim_wnn_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
94libuim_wnn_la_CPPFLAGS = -I$(top_srcdir) $(WNN_CPPFLAGS)
95endif
96
97if ANTHY
98if ENABLE_ANTHY_STATIC
99  libuim_la_SOURCES += anthy.c
100else
101  uim_plugin_LTLIBRARIES += libuim-anthy.la
102  libuim_anthy_la_SOURCES = anthy.c
103  libuim_anthy_la_LIBADD = @ANTHY_LIBS@ -luim-scm -luim
104  libuim_anthy_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
105  libuim_anthy_la_CPPFLAGS = -I$(top_srcdir)
106endif
107endif
108
109if ANTHY_UTF8
110if ENABLE_ANTHY_UTF8_STATIC
111  libuim_la_SOURCES += anthy-utf8.c
112else
113  uim_plugin_LTLIBRARIES += libuim-anthy-utf8.la
114  libuim_anthy_utf8_la_SOURCES = anthy-utf8.c
115  libuim_anthy_utf8_la_LIBADD = @ANTHY_UTF8_LIBS@ -luim-scm -luim
116  libuim_anthy_utf8_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
117  libuim_anthy_utf8_la_CPPFLAGS = -I$(top_srcdir) @ANTHY_UTF8_CFLAGS@
118endif
119endif
120
121if MANA
122uim_plugin_LTLIBRARIES += libuim-mana.la
123libuim_mana_la_SOURCES = mana.c
124libuim_mana_la_LIBADD = libuim-scm.la libuim.la
125libuim_mana_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
126libuim_mana_la_CPPFLAGS = -I$(top_srcdir)
127endif
128
129if CURL
130uim_plugin_LTLIBRARIES += libuim-curl.la
131libuim_curl_la_SOURCES = curl.c
132libuim_curl_la_LIBADD = @CURL_LIBS@ libuim.la
133libuim_curl_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
134libuim_curl_la_CPPFLAGS = -I$(top_srcdir) @CURL_CFLAGS@
135endif
136
137if EXPAT
138uim_plugin_LTLIBRARIES += libuim-expat.la
139libuim_expat_la_SOURCES = expat.c
140libuim_expat_la_LIBADD = @EXPAT_LIBS@ libuim.la libuim-scm.la
141libuim_expat_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
142libuim_expat_la_CPPFLAGS = -I$(top_srcdir) @EXPAT_CFLAGS@
143endif
144
145if OPENSSL
146uim_plugin_LTLIBRARIES += libuim-openssl.la
147libuim_openssl_la_SOURCES = openssl.c
148libuim_openssl_la_LIBADD = @OPENSSL_LIBS@ libuim.la
149libuim_openssl_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
150libuim_openssl_la_CPPFLAGS = -I$(top_srcdir) @OPENSSL_CPPFLAGS@
151endif
152
153if SQLITE3
154uim_plugin_LTLIBRARIES += libuim-sqlite3.la
155libuim_sqlite3_la_SOURCES = sqlite3.c
156libuim_sqlite3_la_LIBADD = @SQLITE3_LIBS@ libuim.la
157libuim_sqlite3_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
158libuim_sqlite3_la_CPPFLAGS = -I$(top_srcdir) @SQLITE3_CFLAGS@
159endif
160
161if FFI
162uim_plugin_LTLIBRARIES += libuim-ffi.la
163libuim_ffi_la_SOURCES = ffi.c
164libuim_ffi_la_LIBADD = @FFI_LIBS@ libuim.la
165libuim_ffi_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
166libuim_ffi_la_CPPFLAGS = -I$(top_srcdir) @FFI_CFLAGS@
167endif
168
169if EB
170uim_plugin_LTLIBRARIES += libuim-eb.la
171libuim_eb_la_SOURCES = eb.c uim-eb.c uim-eb.h
172libuim_eb_la_LIBADD = libuim-scm.la libuim.la \
173		      @EBCONF_EBLIBS@ @EBCONF_ZLIBLIBS@ \
174		      @EBCONF_INTLLIBS@
175libuim_eb_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module \
176		       @EBCONF_PTHREAD_LDFLAGS@
177libuim_eb_la_CPPFLAGS = -I$(top_srcdir) \
178			@EBCONF_EBINCS@ @EBCONF_ZLIBINCS@ \
179			@EBCONF_PTHREAD_CPPFLAGS@ \
180			@EBCONF_INTLINCS@
181libuim_eb_la_CFLAGS = @EBCONF_PTHREAD_CFLAGS@ -Wall
182endif
183
184if XKB
185uim_plugin_LTLIBRARIES += libuim-xkb.la
186libuim_xkb_la_SOURCES = uim-xkb.c
187libuim_xkb_la_LIBADD = libuim-scm.la libuim.la libuim-x-util.la @X11_LIBS@
188libuim_xkb_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
189libuim_xkb_la_CFLAGS = @X11_CFLAGS@
190libuim_xkb_la_CPPFLAGS = -I$(top_srcdir)
191endif
192
193if OSX_DCS
194uim_plugin_LTLIBRARIES += libuim-osx-dcs.la
195libuim_osx_dcs_la_SOURCES = osx-dcs.m
196libuim_osx_dcs_la_OBJCFLAGS = -x objective-c
197libuim_osx_dcs_la_LDFLAGS = -avoid-version -module -framework Cocoa
198endif
199
200uim_plugin_LTLIBRARIES += libuim-skk.la
201libuim_skk_la_SOURCES = skk.c bsdlook.h
202libuim_skk_la_LIBADD = libuim-scm.la libuim.la libuim-bsdlook.la @NETLIBS@
203libuim_skk_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
204libuim_skk_la_CPPFLAGS = -I$(top_srcdir)
205
206uim_plugin_LTLIBRARIES += libuim-look.la
207libuim_look_la_SOURCES = look.c bsdlook.h
208libuim_look_la_LIBADD = libuim-scm.la libuim.la libuim-bsdlook.la
209libuim_look_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
210libuim_look_la_CPPFLAGS = -I$(top_srcdir)
211
212libuim_bsdlook_la_SOURCES = bsdlook.h bsdlook.c
213libuim_bsdlook_la_LIBADD =
214libuim_bsdlook_la_CPPFLAGS = -I$(top_srcdir)
215
216uim_plugin_LTLIBRARIES += libuim-lolevel.la
217libuim_lolevel_la_SOURCES = lolevel.c
218libuim_lolevel_la_LIBADD = libuim.la libuim-scm.la
219libuim_lolevel_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
220libuim_lolevel_la_CPPFLAGS = -I$(top_srcdir)
221
222libuimincludedir =  $(includedir)/uim
223
224libuim_scm_la_SOURCES = uim-scm-sigscheme.c
225libuim_scm_la_LIBADD = $(GCROOTS_LIBS)
226libuim_scm_la_LDFLAGS = -version-info $(libuim_scm_version) -export-dynamic
227libuim_scm_la_CPPFLAGS = -I$(top_srcdir) \
228			 -I$(top_builddir)/sigscheme/include \
229			 -I$(top_srcdir)/sigscheme/src \
230			 -I$(top_builddir)/sigscheme/src \
231			 $(GCROOTS_CFLAGS)
232libuim_scm_la_CFLAGS =
233if GCC_4_OR_EARLIER
234  # GCC 4.4's optimization may causes problem with combination of
235  # alloc.c and read.c imported from sigscheme
236  libuim_scm_la_CFLAGS += -fno-strict-aliasing
237endif
238if DEBUG
239  libuim_scm_la_CPPFLAGS += -DDEBUG=1 -DDEBUG_SCM=1
240endif
241# Since the generated Makefile will have the order
242# '$(libuim_scm_la_CFLAGS) $(CFLAGS)', overriding -Werror in $CFLAGS
243# by -Wno-error in $UIM_SCM_CFLAGS does not work.
244#libuim_scm_la_CFLAGS += $(UIM_SCM_CFLAGS)
245
246# NOTE: Don't depend on -export-symbols-regex to avoid symbol
247# conflict. The libtool option is not and will not be supported on
248# some platforms. See [Anthy-dev 2847].  -- YamaKen 2006-03-30
249libuim_la_LDFLAGS = -version-info $(libuim_version) -export-dynamic
250libuim_la_LIBADD = @LTLIBINTL@ @LTLIBICONV@ \
251		   libuim-scm.la \
252		   $(top_builddir)/replace/libreplace.la
253# - Place -I$(top_srcdir) surely prior to sigscheme dirs
254# - To take precedence over installed gcroots.h by the bundled
255#   libgcroots/include/gcroots.h, @GCROOTS_CFLAGS@ must be placed here.
256libuim_la_CPPFLAGS = $(uim_defs) \
257		     -I$(top_srcdir) \
258		     -DPKGLIBDIR=\"$(pkglibdir)\" \
259		     -DPKGDATADIR=\"$(pkgdatadir)\"
260
261if ENABLE_ANTHY_STATIC
262  libuim_la_LIBADD += @ANTHY_LIBS@
263  libuim_la_CPPFLAGS += -DENABLE_ANTHY_STATIC
264endif
265if ENABLE_ANTHY_UTF8_STATIC
266  libuim_la_LIBADD += @ANTHY_LIBS@
267  libuim_la_CPPFLAGS += -DENABLE_ANTHY_UTF8_STATIC
268endif
269if DEBUG
270  libuim_la_CPPFLAGS += -DDEBUG=1 -DDEBUG_SCM=1
271endif
272
273libuim_custom_la_LDFLAGS = -version-info $(libuim_custom_version) \
274			   -export-dynamic
275libuim_custom_la_LIBADD = libuim-scm.la libuim.la
276libuim_custom_la_CPPFLAGS = $(uim_defs) -I$(top_srcdir)
277
278uim_plugin_LTLIBRARIES += libuim-custom-enabler.la
279libuim_custom_enabler_la_SOURCES = uim-custom-enabler.c
280libuim_custom_enabler_la_LIBADD = libuim-custom.la libuim-scm.la libuim.la
281libuim_custom_enabler_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
282libuim_custom_enabler_la_CPPFLAGS = -I$(top_srcdir)
283
284libuim_counted_init_la_SOURCES = counted-init.c counted-init.h
285libuim_counted_init_la_CPPFLAGS = -I$(top_srcdir)
286
287if LIBUIM_X_UTIL
288libuim_x_util_la_SOURCES = uim-x-util.h uim-x-util.c uim-x-kana-input-hack.c
289libuim_x_util_la_CPPFLAGS = -I$(top_srcdir)
290libuim_x_util_la_CFLAGS = @X11_CFLAGS@
291libuim_x_util_la_LIBADD = @X11_LIBS@
292endif
293
294
295bin_PROGRAMS = uim-sh uim-module-manager uim-help
296libexec_PROGRAMS = uim-helper-server
297
298uim_helper_server_LIBS =
299uim_helper_server_CPPFLAGS = $(uim_defs) -I$(top_srcdir)
300# uim-notify workaround for uim-error.c combined with non-libuim program
301uim_helper_server_CPPFLAGS += -DUIM_NON_LIBUIM_PROG
302uim_helper_server_CFLAGS =
303uim_helper_server_SOURCES = uim-helper.c uim-helper-server.c uim-error.c
304uim_helper_server_LDADD = $(top_builddir)/replace/libreplace.la
305
306uim_sh_LIBS =
307uim_sh_CPPFLAGS = $(uim_defs) -I$(top_srcdir)
308uim_sh_CFLAGS =
309uim_sh_LDADD = libuim-scm.la libuim.la
310uim_sh_SOURCES = uim-sh.c
311
312uim_help_LIBS =
313uim_help_CPPFLAGS = $(uim_defs) -I$(top_srcdir)
314uim_help_CFLAGS =
315uim_help_LDADD = libuim-scm.la libuim.la
316uim_help_SOURCES = uim-help.c
317
318if LIBEDIT
319  uim_plugin_LTLIBRARIES += libuim-editline.la
320  libuim_editline_la_SOURCES = editline.c
321  libuim_editline_la_LIBADD = @LIBEDIT_LIBS@ libuim-scm.la libuim.la
322  libuim_editline_la_LDFLAGS = -rpath $(uim_plugindir) -avoid-version -module
323  libuim_editline_la_CPPFLAGS = -I$(top_srcdir)
324endif
325
326uim_module_manager_LIBS =
327uim_module_manager_CPPFLAGS = $(uim_defs) -I$(top_srcdir) -DUIM_DATADIR=\""$(datadir)/uim"\"
328uim_module_manager_CFLAGS =
329uim_module_manager_LDADD = libuim-scm.la libuim.la
330uim_module_manager_SOURCES = uim-module-manager.c
331
332noinst_PROGRAMS = uim-agent
333
334uim_agent_SOURCES = agent.c
335uim_agent_LDADD   = libuim-scm.la libuim.la
336