]> www.fi.muni.cz Git - evince.git/blob - libdocument/Makefile.am
[build] Remove circular dependencies in Makefiles
[evince.git] / libdocument / Makefile.am
1 lib_LTLIBRARIES = libevdocument.la
2
3 NOINST_H_FILES =                                \
4         ev-debug.h                              \
5         ev-module.h
6
7 INST_H_SRC_FILES =                              \
8         ev-annotation.h                         \
9         ev-async-renderer.h                     \
10         ev-attachment.h                         \
11         ev-backends-manager.h                   \
12         ev-document-factory.h                   \
13         ev-document-annotations.h               \
14         ev-document-attachments.h               \
15         ev-document-find.h                      \
16         ev-document-fonts.h                     \
17         ev-document-forms.h                     \
18         ev-document.h                           \
19         ev-document-images.h                    \
20         ev-document-info.h                      \
21         ev-document-layers.h                    \
22         ev-document-links.h                     \
23         ev-document-misc.h                      \
24         ev-document-print.h                     \
25         ev-document-security.h                  \
26         ev-document-thumbnails.h                \
27         ev-document-transition.h                \
28         ev-file-exporter.h                      \
29         ev-file-helpers.h                       \
30         ev-form-field.h                         \
31         ev-image.h                              \
32         ev-init.h                               \
33         ev-layer.h                              \
34         ev-link-action.h                        \
35         ev-link-dest.h                          \
36         ev-link.h                               \
37         ev-mapping.h                            \
38         ev-page.h                               \
39         ev-render-context.h                     \
40         ev-selection.h                          \
41         ev-transition-effect.h                  \
42         ev-version.h
43
44 INST_H_FILES =                                  \
45         $(INST_H_SRC_FILES)                     \
46         ev-document-type-builtins.h
47
48 headerdir = $(includedir)/evince/$(EV_API_VERSION)/libdocument
49 header_DATA = $(INST_H_FILES)
50
51 libevdocument_la_SOURCES=                       \
52         ev-annotation.c                         \
53         ev-async-renderer.c                     \
54         ev-attachment.c                         \
55         ev-backends-manager.c                   \
56         ev-layer.c                              \
57         ev-link.c                               \
58         ev-link-action.c                        \
59         ev-link-dest.c                          \
60         ev-image.c                              \
61         ev-init.c                               \
62         ev-document.c                           \
63         ev-document-annotations.c               \
64         ev-document-attachments.c               \
65         ev-document-factory.c                   \
66         ev-document-thumbnails.c                \
67         ev-document-fonts.c                     \
68         ev-document-layers.c                    \
69         ev-document-links.c                     \
70         ev-document-images.c                    \
71         ev-document-print.c                     \
72         ev-document-security.c                  \
73         ev-document-find.c                      \
74         ev-document-transition.c                \
75         ev-document-forms.c                     \
76         ev-document-type-builtins.c             \
77         ev-form-field.c                         \
78         ev-debug.c                              \
79         ev-file-exporter.c                      \
80         ev-file-helpers.c                       \
81         ev-mapping.c                            \
82         ev-module.c                             \
83         ev-page.c                               \
84         ev-render-context.c                     \
85         ev-selection.c                          \
86         ev-transition-effect.c                  \
87         ev-document-misc.c                      \
88         $(NOINST_H_FILES)                       \
89         $(INST_H_FILES)
90
91 libevdocument_la_CPPFLAGS = \
92         -DG_LOG_DOMAIN=\"EvinceDocument\"               \
93         -DEVINCE_UIDIR=\"$(pkgdatadir)\"                \
94         -DGNOMELOCALEDIR=\"$(datadir)/locale\"          \
95         -DEV_BACKENDSDIR=\"$(backenddir)\"              \
96         -DEV_BACKENDSBINARYVERSION=\"$(backend_binary_version)\"        \
97         -DEVINCE_COMPILATION                            \
98         $(AM_CPPFLAGS)
99
100 libevdocument_la_CFLAGS = \
101         $(LIBDOCUMENT_CFLAGS)   \
102         $(WARN_CFLAGS)          \
103         $(DISABLE_DEPRECATED)   \
104         $(AM_CFLAGS)
105
106 libevdocument_la_LDFLAGS = \
107         -version-info $(EV_DOCUMENT_LT_VERSION_INFO)    \
108         -no-undefined   \
109         -export-symbols-regex "^ev_*"   \
110         $(AM_LDFLAGS)
111
112 libevdocument_la_LIBADD = $(LIBDOCUMENT_LIBS)
113
114 BUILT_SOURCES =                         \
115         ev-document-type-builtins.c     \
116         ev-document-type-builtins.h
117
118 CLEANFILES =                                    \
119         $(BUILT_SOURCES)                        \
120         stamp-ev-document-type-builtins.h       \
121         stamp-ev-document-type-builtins.c
122
123 ev-document-type-builtins.h: stamp-ev-document-type-builtins.h
124         @true
125 stamp-ev-document-type-builtins.h: ev-document-type-builtins.h.template $(INST_H_SRC_FILES)
126         $(AM_V_GEN)$(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbh \
127         && (cmp -s xgen-etbh ev-document-type-builtins.h || cp xgen-etbh ev-document-type-builtins.h ) \
128         && rm -f xgen-etbh \
129         && echo timestamp > $(@F)
130
131 ev-document-type-builtins.c: stamp-ev-document-type-builtins.c
132         @true
133 stamp-ev-document-type-builtins.c: ev-document-type-builtins.c.template $(INST_H_SRC_FILES)
134         $(AM_V_GEN)$(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbc \
135         && (cmp -s xgen-etbc ev-document-type-builtins.c || cp xgen-etbc ev-document-type-builtins.c ) \
136         && rm -f xgen-etbc \
137         && echo timestamp > $(@F)
138
139 EXTRA_DIST = \
140         ev-document-type-builtins.c.template \
141         ev-document-type-builtins.h.template
142
143 # GObject Introspection
144
145 if ENABLE_INTROSPECTION
146
147 EvinceDocument-$(EV_API_VERSION).gir: libevdocument.la Makefile $(INST_H_FILES) $(filter %.c,$(libevdocument_la_SOURCES))
148         $(AM_V_GEN) PKG_CONFIG_PATH=$(top_builddir):$$PKG_CONFIG_PATH \
149         $(G_IR_SCANNER) -v --namespace EvinceDocument \
150         --strip-prefix=Ev \
151         --nsversion=$(EV_API_VERSION) \
152         --include=GLib-2.0 \
153         --include=Gio-2.0 \
154         --include=Gdk-2.0 \
155         --include=GdkPixbuf-2.0 \
156         --include=Gtk-2.0 \
157         --library=evdocument \
158         --libtool="$(SAVED_LIBTOOL)" \
159         --output $@ \
160         --pkg evince-document-$(EV_API_VERSION) \
161         -I$(top_srcdir) \
162         -I$(top_builddir) \
163         -I$(srcdir) \
164         -I$(builddir) \
165         -DEVINCE_COMPILATION \
166         $(filter %.h,$^) \
167         $(filter %.c,$^)
168
169 girdir = $(GIRDIR)
170 gir_DATA = EvinceDocument-$(EV_API_VERSION).gir
171
172 typelibsdir = $(GIRTYPELIBDIR)
173 typelibs_DATA = EvinceDocument-$(EV_API_VERSION).typelib
174
175 EXTRA_DIST += $(gir_DATA)
176 CLEANFILES += $(gir_DATA) $(typelibs_DATA)
177
178 %.typelib: %.gir
179         $(AM_V_GEN) LD_LIBRARY_PATH=$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}. $(G_IR_COMPILER) \
180         --includedir=$(srcdir) \
181         --includedir=. \
182         $(G_IR_COMPILER_OPTS) \
183         $< -o $@
184
185 endif # ENABLE_INTROSPECTION
186
187 -include $(top_srcdir)/git.mk