]> git.0d.be Git - empathy.git/blob - libempathy/Makefile.am
Do not export symbols outside the empathy_ namespace.
[empathy.git] / libempathy / Makefile.am
1 AM_CPPFLAGS =                                           \
2         -I.                                             \
3         -I$(top_srcdir)                                 \
4         -DDATADIR=\""$(datadir)"\"                      \
5         $(LIBEMPATHY_CFLAGS)                            \
6         $(WARN_CFLAGS)
7
8 BUILT_SOURCES =                                         \
9         empathy-marshal.h                               \
10         empathy-marshal.c                               \
11         empathy-enum-types.h                            \
12         empathy-enum-types.c                            \
13         empathy-filter-glue.h                           \
14         empathy-chandler-glue.h                         \
15         tp-stream-engine-gen.h
16
17 lib_LTLIBRARIES = libempathy.la
18
19 libempathy_la_SOURCES =                                 \
20         empathy-avatar.c                                \
21         empathy-time.c                                  \
22         empathy-status-presets.c                        \
23         empathy-debug.c                                 \
24         empathy-utils.c                                 \
25         empathy-message.c                               \
26         empathy-chatroom-manager.c                      \
27         empathy-chatroom.c                              \
28         empathy-contact.c                               \
29         empathy-contact-groups.c                        \
30         empathy-contact-list.c                          \
31         empathy-contact-manager.c                       \
32         empathy-contact-factory.c                       \
33         empathy-tp-contact-factory.c                    \
34         empathy-tp-group.c                              \
35         empathy-tp-contact-list.c                       \
36         empathy-tp-chat.c                               \
37         empathy-tp-chatroom.c                           \
38         empathy-tp-roomlist.c                           \
39         empathy-tp-call.c                               \
40         empathy-chandler.c                              \
41         empathy-filter.c                                \
42         empathy-idle.c                                  \
43         empathy-log-manager.c
44
45 # do not distribute generated files
46 nodist_libempathy_la_SOURCES =\
47         $(BUILT_SOURCES)
48
49 libempathy_la_LIBADD =          \
50         $(LIBEMPATHY_LIBS)
51
52 libempathy_la_LDFLAGS =         \
53        -version-info ${LIBEMPATHY_CURRENT}:${LIBEMPATHY_REVISION}:${LIBEMPATHY_AGE} \
54        -export-symbols-regex ^empathy_
55
56 libempathy_headers =                            \
57         empathy-avatar.h                        \
58         empathy-time.h                          \
59         empathy-status-presets.h                \
60         empathy-debug.h                         \
61         empathy-utils.h                         \
62         empathy-message.h                       \
63         empathy-chatroom-manager.h              \
64         empathy-chatroom.h                      \
65         empathy-contact.h                       \
66         empathy-contact-groups.h                \
67         empathy-contact-list.h                  \
68         empathy-contact-manager.h               \
69         empathy-contact-factory.h               \
70         empathy-tp-contact-factory.h            \
71         empathy-tp-group.h                      \
72         empathy-tp-contact-list.h               \
73         empathy-tp-chat.h                       \
74         empathy-tp-chatroom.h                   \
75         empathy-tp-roomlist.h                   \
76         empathy-tp-call.h                       \
77         empathy-chandler.h                      \
78         empathy-filter.h                        \
79         empathy-idle.h                          \
80         empathy-log-manager.h
81
82 libempathy_includedir = $(includedir)/libempathy/
83 libempathy_include_HEADERS =                    \
84         $(libempathy_headers)                   \
85         empathy-enum-types.h
86
87 %-marshal.h: %-marshal.list Makefile
88         $(GLIB_GENMARSHAL) --header --prefix=_$(subst -,_,$*)_marshal $< > $*-marshal.h
89
90 %-marshal.c: %-marshal.list Makefile
91         echo "#include \"empathy-marshal.h\"" > $@ && \
92         $(GLIB_GENMARSHAL) --body --prefix=_$(subst -,_,$*)_marshal $< >> $*-marshal.c
93
94 empathy-chandler-glue.h: empathy-chandler.xml Makefile
95         $(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=empathy_chandler --mode=glib-server --output=$@ $<
96 empathy-filter-glue.h: empathy-filter.xml Makefile
97         $(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=empathy_filter --mode=glib-server --output=$@ $<
98
99 tp-stream-engine-gen.h: tp-stream-engine.xml Makefile.am
100         $(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=tp_stream_engine --mode=glib-client --output=$@ $<
101
102
103 empathy-enum-types.h: stamp-empathy-enum-types.h
104         @true
105 stamp-empathy-enum-types.h: $(libempathy_headers) Makefile
106         (cd $(srcdir) \
107         && glib-mkenums \
108                         --fhead "#ifndef __LIBEMPATHY_ENUM_TYPES_H__\n" \
109                         --fhead "#define __LIBEMPATHY_ENUM_TYPES_H__ 1\n\n" \
110                         --fhead "#include <glib-object.h>\n\n" \
111                         --fhead "G_BEGIN_DECLS\n\n" \
112                         --ftail "G_END_DECLS\n\n" \
113                         --ftail "#endif /* __LIBEMPATHY_ENUM_TYPES_H__ */\n" \
114                         --fprod "#include <libempathy/@filename@>\n" \
115                         --eprod "#define EMPATHY_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n" \
116                         --eprod "GType @enum_name@_get_type (void);\n" \
117                 $(libempathy_headers) ) > xgen-gth \
118         && (cmp -s xgen-gth empathy-enum-type.h || cp xgen-gth empathy-enum-types.h) \
119         && rm -f xgen-gth \
120         && echo timestamp > $(@F)
121
122 empathy-enum-types.c: $(libempathy_headers) Makefile
123         (cd $(srcdir) \
124         && glib-mkenums \
125                         --fhead "#include <config.h>\n" \
126                         --fhead "#include <glib-object.h>\n" \
127                         --fhead "#include \"empathy-enum-types.h\"\n\n" \
128                         --fprod "\n/* enumerations from \"@filename@\" */" \
129                         --vhead "static const G@Type@Value _@enum_name@_values[] = {" \
130                         --vprod "  { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
131                         --vtail "  { 0, NULL, NULL }\n};\n\n" \
132                         --vtail "GType\n@enum_name@_get_type (void)\n{\n" \
133                         --vtail "  static GType type = 0;\n\n" \
134                         --vtail "  if (!type)\n" \
135                         --vtail "    type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n\n" \
136                         --vtail "  return type;\n}\n\n" \
137                 $(libempathy_headers) ) > xgen-gtc \
138         && cp xgen-gtc $(@F) \
139         && rm -f xgen-gtc
140
141 dtddir = $(datadir)/empathy
142 dtd_DATA =                                      \
143         empathy-status-presets.dtd              \
144         empathy-contact-groups.dtd              \
145         empathy-chatroom-manager.dtd
146
147 stylesheetdir = $(datadir)/empathy
148 stylesheet_DATA =               \
149         empathy-log-manager.xsl
150
151 pkgconfigdir = $(libdir)/pkgconfig
152 pkgconfig_DATA = libempathy.pc
153
154 EXTRA_DIST =                    \
155         empathy-marshal.list    \
156         empathy-chandler.xml    \
157         empathy-filter.xml      \
158         tp-stream-engine.xml    \
159         $(stylesheet_DATA)      \
160         $(dtd_DATA)
161
162 CLEANFILES =                            \
163         $(BUILT_SOURCES)                \
164         stamp-empathy-enum-types.h