Release libxcb 1.0 RC2 (0.9.92).
[free-sw/xcb/libxcb] / src / Makefile.am
1 lib_LTLIBRARIES = libxcb.la \
2                   libxcb-xlib.la \
3                   libxcb-composite.la \
4                   libxcb-damage.la \
5                   libxcb-dpms.la \
6                   libxcb-glx.la \
7                   libxcb-randr.la \
8                   libxcb-record.la \
9                   libxcb-render.la \
10                   libxcb-res.la \
11                   libxcb-screensaver.la \
12                   libxcb-shape.la \
13                   libxcb-shm.la \
14                   libxcb-sync.la \
15                   libxcb-xevie.la \
16                   libxcb-xf86dri.la \
17                   libxcb-xfixes.la \
18                   libxcb-xprint.la \
19                   libxcb-xtest.la \
20                   libxcb-xv.la \
21                   libxcb-xvmc.la
22
23 EXTHEADERS = \
24                 bigreq.h \
25                 composite.h \
26                 damage.h \
27                 dpms.h \
28                 glx.h \
29                 randr.h \
30                 record.h \
31                 render.h \
32                 res.h \
33                 screensaver.h \
34                 shape.h \
35                 shm.h \
36                 sync.h \
37                 xc_misc.h \
38                 xevie.h \
39                 xf86dri.h \
40                 xfixes.h \
41                 xprint.h \
42                 xtest.h \
43                 xv.h \
44                 xvmc.h
45 EXTSOURCES = \
46                 bigreq.c \
47                 composite.c \
48                 damage.c \
49                 dpms.c \
50                 glx.c \
51                 randr.c \
52                 record.c \
53                 render.c \
54                 res.c \
55                 screensaver.c \
56                 shape.c \
57                 shm.c \
58                 sync.c \
59                 xc_misc.c \
60                 xevie.c \
61                 xf86dri.c \
62                 xfixes.c \
63                 xprint.c \
64                 xtest.c \
65                 xv.c \
66                 xvmc.c
67 EXTENSIONS = $(EXTSOURCES) $(EXTHEADERS)
68
69 ESSENTIAL_EXTENSIONS = \
70                 bigreq.h \
71                 bigreq.c \
72                 xc_misc.h \
73                 xc_misc.c
74
75 EXTENSION_XML = \
76                 bigreq.xml \
77                 composite.xml \
78                 damage.xml \
79                 dpms.xml \
80                 glx.xml \
81                 randr.xml \
82                 record.xml \
83                 render.xml \
84                 res.xml \
85                 screensaver.xml \
86                 shape.xml \
87                 shm.xml \
88                 sync.xml \
89                 xc_misc.xml \
90                 xevie.xml \
91                 xf86dri.xml \
92                 xfixes.xml \
93                 xprint.xml \
94                 xtest.xml \
95                 xvmc.xml \
96                 xv.xml
97
98 COREHEADERS = xproto.h
99 CORESOURCES = xproto.c
100 COREPROTO   = $(CORESOURCES) $(COREHEADERS)
101
102 xcbinclude_HEADERS = xcb.h xcbext.h xcbxlib.h $(COREHEADERS) $(EXTHEADERS)
103 noinst_HEADERS = xcbint.h
104
105 AM_CFLAGS = $(COPTFLAGS) $(CWARNFLAGS) $(CDEBUGFLAGS) $(XCBPROTO_CFLAGS) $(XAU_CFLAGS) $(XDMCP_CFLAGS)
106 libxcb_la_LIBADD = $(XCBPROTO_LIBS) $(XAU_LIBS) $(XDMCP_LIBS)
107 libxcb_la_SOURCES = \
108                 xcb_conn.c xcb_out.c xcb_in.c xcb_ext.c xcb_xid.c \
109                 xcb_list.c xcb_util.c xcb_auth.c \
110                 $(COREPROTO) $(ESSENTIAL_EXTENSIONS) c-client.xsl
111
112 # Explanation for -version-info:
113 # -version-info current:revision:age
114 # The library supports interface (current-age) to interface current.
115 # * If you changed the source code at all, increment revision.
116 # * If you add an interface, increment current and age and set revision to 0.
117 # * If you change or remove an interface, increment current and set revision
118 #   and age to 0.
119 libxcb_la_LDFLAGS = -version-info 1:0:0
120
121 BUILT_SOURCES = $(COREPROTO) $(EXTENSIONS)
122 CLEANFILES = $(COREPROTO) $(EXTENSIONS)
123
124 XCB_LIBS = libxcb.la
125
126 libxcb_xlib_la_LDFLAGS = -version-info 0:0:0
127 libxcb_xlib_la_LIBADD = $(XCB_LIBS)
128 libxcb_xlib_la_SOURCES = xcb_xlib.c
129
130 # FIXME: find a way to autogenerate this from the XML files.
131
132 libxcb_composite_la_LDFLAGS = -version-info 0:0:0
133 libxcb_composite_la_LIBADD = $(XCB_LIBS)
134 libxcb_composite_la_SOURCES = composite.c composite.h
135
136 libxcb_damage_la_LDFLAGS = -version-info 0:0:0
137 libxcb_damage_la_LIBADD = $(XCB_LIBS)
138 libxcb_damage_la_SOURCES = damage.c damage.h
139
140 libxcb_dpms_la_LDFLAGS = -version-info 0:0:0
141 libxcb_dpms_la_LIBADD = $(XCB_LIBS)
142 libxcb_dpms_la_SOURCES = dpms.c dpms.h
143
144 libxcb_glx_la_LDFLAGS = -version-info 0:0:0
145 libxcb_glx_la_LIBADD = $(XCB_LIBS)
146 libxcb_glx_la_SOURCES = glx.c glx.h
147
148 libxcb_randr_la_LDFLAGS = -version-info 0:0:0
149 libxcb_randr_la_LIBADD = $(XCB_LIBS)
150 libxcb_randr_la_SOURCES = randr.c randr.h
151
152 libxcb_record_la_LDFLAGS = -version-info 0:0:0
153 libxcb_record_la_LIBADD = $(XCB_LIBS)
154 libxcb_record_la_SOURCES = record.c record.h
155
156 libxcb_render_la_LDFLAGS = -version-info 0:0:0
157 libxcb_render_la_LIBADD = $(XCB_LIBS)
158 libxcb_render_la_SOURCES = render.c render.h
159
160 libxcb_res_la_LDFLAGS = -version-info 0:0:0
161 libxcb_res_la_LIBADD = $(XCB_LIBS)
162 libxcb_res_la_SOURCES = res.c res.h
163
164 libxcb_screensaver_la_LDFLAGS = -version-info 0:0:0
165 libxcb_screensaver_la_LIBADD = $(XCB_LIBS)
166 libxcb_screensaver_la_SOURCES = screensaver.c screensaver.h
167
168 libxcb_shape_la_LDFLAGS = -version-info 0:0:0
169 libxcb_shape_la_LIBADD = $(XCB_LIBS)
170 libxcb_shape_la_SOURCES = shape.c shape.h
171
172 libxcb_shm_la_LDFLAGS = -version-info 0:0:0
173 libxcb_shm_la_LIBADD = $(XCB_LIBS)
174 libxcb_shm_la_SOURCES = shm.c shm.h
175
176 libxcb_sync_la_LDFLAGS = -version-info 0:0:0
177 libxcb_sync_la_LIBADD = $(XCB_LIBS)
178 libxcb_sync_la_SOURCES = sync.c sync.h
179
180 libxcb_xevie_la_LDFLAGS = -version-info 0:0:0
181 libxcb_xevie_la_LIBADD = $(XCB_LIBS)
182 libxcb_xevie_la_SOURCES = xevie.c xevie.h
183
184 libxcb_xf86dri_la_LDFLAGS = -version-info 0:0:0
185 libxcb_xf86dri_la_LIBADD = $(XCB_LIBS)
186 libxcb_xf86dri_la_SOURCES = xf86dri.c xf86dri.h
187
188 libxcb_xfixes_la_LDFLAGS = -version-info 0:0:0
189 libxcb_xfixes_la_LIBADD = $(XCB_LIBS)
190 libxcb_xfixes_la_SOURCES = xfixes.c xfixes.h
191
192 libxcb_xprint_la_LDFLAGS = -version-info 0:0:0
193 libxcb_xprint_la_LIBADD = $(XCB_LIBS)
194 libxcb_xprint_la_SOURCES = xprint.c xprint.h
195
196 libxcb_xtest_la_LDFLAGS = -version-info 0:0:0
197 libxcb_xtest_la_LIBADD = $(XCB_LIBS)
198 libxcb_xtest_la_SOURCES = xtest.c xtest.h
199
200 libxcb_xv_la_LDFLAGS = -version-info 0:0:0
201 libxcb_xv_la_LIBADD = $(XCB_LIBS)
202 libxcb_xv_la_SOURCES = xv.c xv.h
203
204 libxcb_xvmc_la_LDFLAGS = -version-info 0:0:0
205 libxcb_xvmc_la_LIBADD = $(XCB_LIBS)
206 libxcb_xvmc_la_SOURCES = xvmc.c xvmc.h
207
208 $(EXTHEADERS) $(EXTSOURCES): c-client.xsl
209
210 SUFFIXES = .xml
211
212 .xml.h:
213         @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
214         $(XSLTPROC) --stringparam mode header \
215                     --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
216                     --stringparam extension-path $(XCBPROTO_XCBINCLUDEDIR)/ \
217                     -o $@ $(srcdir)/c-client.xsl $< 
218
219 .xml.c:
220         @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
221         $(XSLTPROC) --stringparam mode source \
222                     --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
223                     --stringparam extension-path $(XCBPROTO_XCBINCLUDEDIR)/ \
224                     -o $@ $(srcdir)/c-client.xsl $< 
225
226 xproto.xml: $(XCBPROTO_XCBINCLUDEDIR)/xproto.xml
227         $(LN_S) $(XCBPROTO_XCBINCLUDEDIR)/xproto.xml $@
228
229 $(EXTENSION_XML):
230         for i in $(EXTENSION_XML) ; do \
231            rm -f $$i ; \
232            $(LN_S) $(XCBPROTO_XCBINCLUDEDIR)/$$i $$i ; \
233         done