1QUIET_GEN = $(Q:@=@echo ' GEN '$@;)
2
3lib_LTLIBRARIES = libgda-ui-5.0.la
4
5if HAVE_GLADE
6    GLADECATALOG = . glade
7endif
8
9SUBDIRS = marshallers data-entries internal data . data-entries/plugins demos $(GLADECATALOG)
10
11GLOBAL_CFLAGS = \
12	-I$(top_builddir)/libgda-ui \
13	-I$(top_builddir) \
14	-I$(top_srcdir) \
15	-I$(top_srcdir)/libgda \
16	-DPLUGINSDIR=\""$(top_builddir)/libgda-ui/plugins/.libs"\" \
17	-DGDA_ABI_VERSION=\""$(GDA_ABI_VERSION)"\" \
18	$(COREDEPS_CFLAGS) \
19	$(GTK_CFLAGS) \
20	$(GIO_CFLAGS)
21
22AM_CPPFLAGS = \
23	$(GLOBAL_CFLAGS) \
24	$(COREDEPS_WFLAGS)
25
26ui_headers = \
27	gdaui-basic-form.h \
28	gdaui-combo.h \
29	gdaui-data-entry.h \
30	gdaui-data-store.h \
31	gdaui-data-filter.h \
32	gdaui-data-selector.h \
33	gdaui-data-proxy.h \
34	gdaui-data-proxy-info.h \
35	gdaui-decl.h \
36	gdaui-easy.h \
37	gdaui-enums.h \
38	gdaui-form.h \
39	gdaui-grid.h \
40	gdaui-cloud.h \
41	gdaui-login.h \
42	gdaui-provider-selector.h \
43	gdaui-raw-form.h \
44	gdaui-raw-grid.h \
45	gdaui-rt-editor.h \
46	gdaui-server-operation.h \
47	gdaui-tree-store.h \
48	gdaui-plugin.h
49
50ui_sources = \
51	$(ui_headers) \
52	gdaui-basic-form.c \
53	gdaui-combo.c \
54	gdaui-data-entry.c \
55	gdaui-data-store.c \
56	gdaui-data-filter.c \
57	gdaui-data-selector.c \
58	gdaui-data-proxy.c \
59	gdaui-data-proxy-info.c \
60	gdaui-form.c \
61	gdaui-grid.c \
62	gdaui-cloud.c \
63	gdaui-login.c \
64	gdaui-provider-selector.c \
65	gdaui-raw-form.c \
66	gdaui-raw-grid.c \
67	bullet.h \
68	bulleth.h \
69	gdaui-rt-editor.c \
70	gdaui-server-operation.c \
71	gdaui-set.h \
72	gdaui-set.c \
73	gdaui-tree-store.c \
74	gdaui-init.c
75
76libgda_ui_5_0_la_SOURCES = \
77	$(libgda_ui_built_cfiles) \
78	$(ui_sources) \
79	gdaui-resources.h \
80	gdaui-resources.c
81
82gdaui-enum-types.h: s-enum-types-h
83	@true
84
85s-enum-types-h: @REBUILD@ $(ui_headers) Makefile
86	( cd $(srcdir) && glib-mkenums \
87	                --fhead "#ifndef __LIBGDAUI_ENUM_TYPES_H__\n#define __LIBGDAUI_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
88			--vhead "GType @enum_name@_get_type (void);\n#define GDAUI_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" 	\
89			--ftail "G_END_DECLS\n\n#endif /* __LIBGDAUI_ENUM_TYPES_H__ */" \
90		$(ui_headers) ) > tmp-gdaui-enum-types.h \
91	&& (cmp -s tmp-gdaui-enum-types.h gdaui-enum-types.h || cp tmp-gdaui-enum-types.h gdaui-enum-types.h ) \
92	&& rm -f tmp-gdaui-enum-types.h	\
93	&& echo timestamp > $(@F)
94
95gdaui-enum-types.c: s-enum-types-c
96	@true
97
98s-enum-types-c: @REBUILD@ $(ui_headers) Makefile
99	( cd $(srcdir) && glib-mkenums \
100	                --fhead "#include <libgda-ui/libgda-ui.h>\n" \
101	                --fhead "#include <glib-object.h>" \
102			--vhead "GType\n@enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G@Type@Value values[] = {" 	\
103			--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
104			--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
105		$(ui_headers) ) > tmp-gdaui-enum-types.c \
106	&& (cmp -s tmp-gdaui-enum-types.c gdaui-enum-types.c || cp tmp-gdaui-enum-types.c gdaui-enum-types.c ) \
107	&& rm -f tmp-gdaui-enum-types.c \
108	&& echo timestamp > $(@F)
109
110
111# Generate the enums source code, with glib-mkenums:
112# This is based on the same Makefile.am stuff in pango:
113libgda_ui_built_headers = gdaui-enum-types.h
114libgda_ui_built_cfiles = gdaui-enum-types.c
115
116$(OBJECTS) $(libgda_ui_5_0_la_OBJECTS): gdaui-resources.h gdaui-resources.c $(libgda_ui_built_headers) $(libgda_ui_built_cfiles)
117
118libgda_ui_5_0_la_LDFLAGS = -version-info $(GDA_CURRENT):$(GDA_REVISION):$(GDA_AGE) \
119	$(NO_UNDEFINED) $(LIBTOOL_UI_EXPORT_OPTIONS)
120libgda_ui_5_0_la_LIBADD = \
121	marshallers/libgda-ui-marshallers.la \
122	internal/libgda-ui-internal.la \
123	data-entries/libgda-ui-data-entries.la \
124	../libgda/libgda-5.0.la \
125	$(COREDEPS_LIBS) \
126	$(GTK_LIBS) \
127	$(GIO_LIBS)
128
129if PLATFORM_WIN32
130libgda_ui_5_0_la_LDFLAGS += -export-symbols $(builddir)/libgda-ui.def
131libgda_ui_5_0_la_DEPENDENCIES = libgda-ui.def
132
133libgda-ui.def: libgda-ui.symbols
134	(echo -e EXPORTS; $(CPP) -P - <$(srcdir)/libgda-ui.symbols | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g' | sort) > libgda-ui.def.tmp && mv libgda-ui.def.tmp libgda-ui.def
135
136libgda-ui-$(GDA_ABI_VERSION).lib: libgda-ui.def
137	$(DLLTOOL) --dllname libgda-ui-$(GDA_ABI_VERSION)-$(GDA_ABI_MAJOR_VERSION).dll --def libgda-ui.def --output-lib libgda-ui-$(GDA_ABI_VERSION).lib
138
139install-data-local: install-def-files
140uninstall-local: uninstall-def-files
141
142install-def-files: libgda-ui.def libgda-ui-$(GDA_ABI_VERSION).lib
143	$(INSTALL) $(builddir)/libgda-ui.def $(DESTDIR)$(libdir)/libgda-ui-$(GDA_ABI_VERSION).def
144	$(INSTALL) $(builddir)/libgda-ui-$(GDA_ABI_VERSION).lib $(DESTDIR)$(libdir)/
145
146uninstall-def-files:
147	-rm $(DESTDIR)$(libdir)/libgda-ui-$(GDA_ABI_VERSION).def
148	-rm $(DESTDIR)$(libdir)/libgda-ui-$(GDA_ABI_VERSION).lib
149endif
150
151gdauiincludedir=$(includedir)/libgda-$(GDA_ABI_MAJOR_VERSION).$(GDA_ABI_MINOR_VERSION)/libgda-ui
152gdauiinclude_HEADERS= libgda-ui.h $(ui_headers) $(libgda_ui_built_headers)
153
154CLEANFILES = $(libgda_ui_built_headers) $(libgda_ui_built_cfiles) \
155	gdaui-enum-types.h \
156	s-enum-types-h \
157	gdaui-enum-types.c \
158	s-enum-types-c \
159	libgda-ui.def \
160	libgda-ui-$(GDA_ABI_VERSION).lib \
161	gdaui-resources.h \
162	gdaui-resources.c
163
164DTD_FILES = gdaui-layout.dtd
165dtddir=$(datadir)/libgda-$(GDA_ABI_MAJOR_VERSION).$(GDA_ABI_MINOR_VERSION)/dtd
166dtd_DATA=$(DTD_FILES)
167
168gdaui-resources.h gdaui-resources.c: $(srcdir)/gdaui.gresource.xml
169	$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --sourcedir=$(builddir) --generate --c-name _gdaui --manual-register $<
170
171EXTRA_DIST = $(DTD_FILES) \
172	libgda-ui.symbols \
173	gdaui.css \
174	gdaui.gresource.xml
175
176DISTCLEANFILES=
177
178if ENABLE_GDAUI_GI
179-include $(INTROSPECTION_MAKEFILE)
180INTROSPECTION_GIRS =
181INTROSPECTION_SCANNER_ARGS = --add-include-path=$(srcdir) \
182                             --add-include-path=$(top_builddir)/libgda \
183                             --add-include-path=$(top_builddir)/libgda-ui \
184                             --namespace Gdaui \
185                             --warn-all \
186                             --c-include=libgda-ui/libgda-ui.h
187ui_data_entries_sources = \
188	data-entries/gdaui-data-cell-renderer-bin.h \
189	data-entries/gdaui-data-cell-renderer-boolean.h \
190	data-entries/gdaui-data-cell-renderer-combo.h \
191	data-entries/gdaui-data-cell-renderer-info.h \
192	data-entries/gdaui-data-cell-renderer-textual.h \
193	data-entries/gdaui-entry-bin.h \
194	data-entries/gdaui-entry-boolean.h \
195	data-entries/gdaui-entry-combo.h \
196	data-entries/gdaui-entry-none.h \
197	data-entries/gdaui-entry-shell.h \
198	data-entries/gdaui-entry-string.h \
199	data-entries/gdaui-entry-number.h \
200	data-entries/gdaui-entry-common-time.h \
201	data-entries/gdaui-entry-time.h \
202	data-entries/gdaui-entry-timestamp.h \
203	data-entries/gdaui-entry-date.h \
204	data-entries/gdaui-entry-wrapper.h \
205	data-entries/gdaui-entry.h \
206	data-entries/gdaui-formatted-entry.h \
207	data-entries/gdaui-numeric-entry.h \
208	data-entries/gdaui-data-cell-renderer-bin.c \
209	data-entries/gdaui-data-cell-renderer-boolean.c \
210	data-entries/gdaui-data-cell-renderer-combo.c \
211	data-entries/gdaui-data-cell-renderer-info.c \
212	data-entries/gdaui-data-cell-renderer-textual.c \
213	data-entries/gdaui-entry-bin.c \
214	data-entries/gdaui-entry-boolean.c \
215	data-entries/gdaui-entry-combo.c \
216	data-entries/gdaui-entry-none.c \
217	data-entries/gdaui-entry-shell.c \
218	data-entries/gdaui-entry-string.c \
219	data-entries/gdaui-entry-number.c \
220	data-entries/gdaui-entry-common-time.c \
221	data-entries/gdaui-entry-time.c \
222	data-entries/gdaui-entry-timestamp.c \
223	data-entries/gdaui-entry-date.c \
224	data-entries/gdaui-entry-wrapper.c \
225	data-entries/gdaui-entry.c \
226	data-entries/gdaui-formatted-entry.c \
227	data-entries/gdaui-numeric-entry.c
228
229introspection_sources = \
230	$(ui_headers) \
231	$(ui_sources) \
232	$(ui_data_entries_sources)
233
234Gdaui-5.0.gir: $(lib_LTLIBRARIES)
235Gdaui_5_0_gir_INCLUDES = Gtk-3.0 Gda-5.0
236Gdaui_5_0_gir_CFLAGS = $(GLOBAL_CFLAGS)
237Gdaui_5_0_gir_LIBS = $(lib_LTLIBRARIES) ../libgda/libgda-5.0.la
238Gdaui_5_0_gir_FILES = $(addprefix $(srcdir)/,$(introspection_sources))
239INTROSPECTION_COMPILER_ARGS = --includedir=$(top_builddir)/libgda
240INTROSPECTION_GIRS += Gdaui-5.0.gir
241
242girdir = $(datadir)/gir-1.0
243typelibsdir = $(libdir)/girepository-1.0
244
245gir_DATA = $(INTROSPECTION_GIRS)
246typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
247
248CLEANFILES += $(typelibs_DATA) $(gir_DATA)
249
250if ENABLE_GDAUI_VALA
251
252vapi: libgdaui-5.0.vapi
253
254libgda-ui-5.0.vapi: Gdaui-5.0.gir
255	$(VAPIGEN) --metadatadir=$(top_srcdir)/libgda-ui --vapidir=$(top_builddir)/libgda --girdir=$(top_builddir)/libgda --library=libgda-ui-5.0 --pkg=libxml-2.0 --pkg=libgda-5.0 --pkg=gio-2.0 --pkg=atk --pkg=gtk+-3.0 Gdaui-5.0.gir
256
257vapidir = $(datadir)/vala/vapi
258vapi_DATA=libgda-ui-5.0.vapi
259
260CLEANFILES += $(vapi_DATA)
261
262endif
263
264endif
265
266EXTRA_DIST += \
267	Gdaui-5.0.metadata
268