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