Added AtkHyperlinkImpl interface. See RFE #344284.
[platform/upstream/atk.git] / atk / Makefile.am
1 # We set GPATH here; this gives us semantics for GNU make
2 # which are more like other make's VPATH.
3 GPATH = $(srcdir)
4
5 if PLATFORM_WIN32
6 no_undefined = -no-undefined
7 else
8 no_undefined =
9 endif
10
11 INCLUDES = \
12         -I$(top_srcdir)         \
13         -DG_DISABLE_DEPRECATED  \
14         $(DEP_CFLAGS)
15
16 lib_LTLIBRARIES = libatk-1.0.la
17
18 libatk_1_0_la_LDFLAGS =                         \
19         -version-info $(LT_VERSION_INFO)        \
20         $(no_undefined)
21 libatk_1_0_la_LIBADD = $(DEP_LIBS)
22
23 libatk_1_0_la_SOURCES =         \
24         atkaction.c             \
25         atkcomponent.c          \
26         atkdocument.c           \
27         atkeditabletext.c       \
28         atkgobjectaccessible.c  \
29         atkhyperlink.c          \
30         atkhyperlinkimpl.c      \
31         atkhypertext.c          \
32         atkimage.c              \
33         atknoopobject.c         \
34         atknoopobjectfactory.c  \
35         atkobject.c             \
36         atkobjectfactory.c      \
37         atkregistry.c           \
38         atkrelation.c           \
39         atkrelationset.c        \
40         atkselection.c          \
41         atkstate.c              \
42         atkstateset.c           \
43         atkstreamablecontent.c  \
44         atktable.c              \
45         atktext.c               \
46         atkutil.c               \
47         atkvalue.c              \
48         atk-enum-types.c
49
50 libatkincludedir=$(includedir)/atk-1.0/atk
51
52 atk_headers = \
53         atk.h                   \
54         atkaction.h             \
55         atkcomponent.h          \
56         atkdocument.h           \
57         atkeditabletext.h       \
58         atkgobjectaccessible.h  \
59         atkhyperlink.h          \
60         atkhyperlinkimpl.h      \
61         atkhypertext.h          \
62         atknoopobject.h         \
63         atknoopobjectfactory.h  \
64         atkobject.h             \
65         atkobjectfactory.h      \
66         atkimage.h              \
67         atkregistry.h           \
68         atkrelation.h           \
69         atkrelationtype.h       \
70         atkrelationset.h        \
71         atkselection.h          \
72         atkstate.h              \
73         atkstateset.h           \
74         atkstreamablecontent.h  \
75         atktable.h              \
76         atktext.h               \
77         atkutil.h               \
78         atkvalue.h
79
80 libatkinclude_HEADERS =         \
81         $(atk_headers)          \
82         atk-enum-types.h
83
84
85 # ---------- Handle built sources ----------
86
87 BUILT_SOURCES = atkmarshal.h atkmarshal.c atk-enum-types.h atk-enum-types.c
88
89 atkmarshal.h: stamp-atkmarshal.h
90         @true
91 stamp-atkmarshal.h: @REBUILD@ atkmarshal.list
92         $(GLIB_GENMARSHAL) --prefix=atk_marshal $(srcdir)/atkmarshal.list --header >> xgen-gmh \
93         && (cmp -s xgen-gmh atkmarshal.h || cp xgen-gmh atkmarshal.h) \
94         && rm -f xgen-gmh xgen-gmh~                                     \
95         && echo timestamp > $(@F)
96
97 atkmarshal.c: stamp-atkmarshal.c
98         @true
99 stamp-atkmarshal.c: @REBUILD@ atkmarshal.list
100         $(GLIB_GENMARSHAL) --prefix=atk_marshal $(srcdir)/atkmarshal.list --body >> xgen-gmc \
101         && (cmp -s xgen-gmc atkmarshal.c || cp xgen-gmc atkmarshal.c) \
102         && rm -f xgen-gmc xgen-gmc~                                     \
103         && echo timestamp > $(@F)
104
105 atk-enum-types.h: s-enum-types-h
106         @true
107 s-enum-types-h: @REBUILD@ $(atk_headers) Makefile
108         ( cd $(srcdir) && glib-mkenums \
109                         --fhead "#ifndef __ATK_ENUM_TYPES_H__\n#define __ATK_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
110                         --fprod "/* enumerations from \"@filename@\" */\n" \
111                         --vhead "GType @enum_name@_get_type (void);\n#define ATK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n"         \
112                         --ftail "G_END_DECLS\n\n#endif /* __ATK_ENUM_TYPES_H__ */" \
113                 $(atk_headers) ) > tmp-atk-enum-types.h \
114         && (cmp -s tmp-atk-enum-types.h atk-enum-types.h || cp tmp-atk-enum-types.h atk-enum-types.h ) \
115         && rm -f tmp-atk-enum-types.h \
116         && echo timestamp > $(@F)
117
118 atk-enum-types.c: s-enum-types-c
119         @true
120 s-enum-types-c: @REBUILD@ $(atk_headers) Makefile
121         ( cd $(srcdir) && glib-mkenums \
122                         --fhead "#include <atk.h>" \
123                         --fprod "\n/* enumerations from \"@filename@\" */" \
124                         --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[] = {"     \
125                         --vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
126                         --vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
127                 $(atk_headers) ) > tmp-atk-enum-types.c \
128         && (cmp -s tmp-atk-enum-types.c atk-enum-types.c || cp tmp-atk-enum-types.c atk-enum-types.c ) \
129         && rm -f tmp-atk-enum-types.c \
130         && echo timestamp > $(@F)
131
132 # ---------- Win32 stuff ----------
133
134 if OS_WIN32
135 libatk_1_0_la_LDFLAGS += -export-symbols $(srcdir)/atk.def -no-undefined -Wl,atk-win32-res.o
136 libatk_1_0_la_DEPENDENCIES = atk-win32-res.o
137
138 install-def-file:
139         $(INSTALL) $(srcdir)/atk.def $(DESTDIR)$(libdir)/atk-1.0.def
140 uninstall-def-file:
141         -rm $(DESTDIR)$(libdir)/atk-1.0.def
142 else
143 install-def-file:
144 uninstall-def-file:
145 endif
146
147 atk-win32-res.o: atk.rc
148         $(WINDRES) $< $@
149
150 if MS_LIB_AVAILABLE
151 noinst_DATA = atk-$(ATK_API_VERSION).lib
152
153 install-ms-lib:
154         $(INSTALL) atk-$(ATK_API_VERSION).lib $(DESTDIR)$(libdir)
155
156 uninstall-ms-lib:
157         -rm $(DESTDIR)$(libdir)/atk-$(ATK_API_VERSION).lib
158 else
159 install-ms-lib:
160 uninstall-ms-lib:
161 endif
162
163 atk-$(ATK_API_VERSION).lib: libatk-$(ATK_API_VERSION).la atk.def
164         lib -name:libatk-$(ATK_API_VERSION)-$(LT_CURRENT_MINUS_AGE).dll -def:atk.def -out:$@
165
166
167 EXTRA_DIST = atk.def atk.rc.in atkmarshal.list atkintl.h
168
169 DISTCLEANFILES = \
170   stamp-atkmarshal.h stamp-atkmarshal.c \
171   s-enum-types-h s-enum-types-c
172
173 distclean-local:
174         if test $(srcdir) = .; then :; else \
175           rm -f atkmarshal.h atkmarshal.c atk-enum-types.h atk-enum-types.c; \
176         fi
177
178 install-data-local: install-ms-lib install-def-file
179
180 uninstall-local: uninstall-ms-lib uninstall-def-file