Split all non-essential extensions into their own separate libraries, named
[free-sw/xcb/libxcb] / src / Makefile.am
1 lib_LTLIBRARIES = libXCB.la \
2                   libXCBcomposite.la \
3                   libXCBdamage.la \
4                   libXCBdpms.la \
5                   libXCBglx.la \
6                   libXCBrandr.la \
7                   libXCBrecord.la \
8                   libXCBrender.la \
9                   libXCBres.la \
10                   libXCBshape.la \
11                   libXCBshm.la \
12                   libXCBsync.la \
13                   libXCBxevie.la \
14                   libXCBxf86dri.la \
15                   libXCBxfixes.la \
16                   libXCBxprint.la \
17                   libXCBxv.la \
18                   libXCBxvmc.la
19
20 EXTHEADERS = \
21                 extensions/bigreq.h \
22                 extensions/composite.h \
23                 extensions/damage.h \
24                 extensions/glx.h \
25                 extensions/shm.h \
26                 extensions/shape.h \
27                 extensions/randr.h \
28                 extensions/record.h \
29                 extensions/render.h \
30                 extensions/res.h \
31                 extensions/dpms.h \
32                 extensions/sync.h \
33                 extensions/xc_misc.h \
34                 extensions/xevie.h \
35                 extensions/xf86dri.h \
36                 extensions/xfixes.h \
37                 extensions/xprint.h \
38                 extensions/xv.h \
39                 extensions/xvmc.h
40 EXTSOURCES = \
41                 extensions/bigreq.c \
42                 extensions/composite.c \
43                 extensions/damage.c \
44                 extensions/glx.c \
45                 extensions/shm.c \
46                 extensions/shape.c \
47                 extensions/randr.c \
48                 extensions/record.c \
49                 extensions/render.c \
50                 extensions/res.c \
51                 extensions/dpms.c \
52                 extensions/sync.c \
53                 extensions/xc_misc.c \
54                 extensions/xevie.c \
55                 extensions/xf86dri.c \
56                 extensions/xfixes.c \
57                 extensions/xprint.c \
58                 extensions/xv.c \
59                 extensions/xvmc.c
60 EXTENSIONS = $(EXTSOURCES) $(EXTHEADERS)
61
62 ESSENTIAL_EXTENSIONS = \
63                 extensions/bigreq.h \
64                 extensions/bigreq.c \
65                 extensions/xc_misc.h \
66                 extensions/xc_misc.c
67
68 COREHEADERS = xproto.h xcb_types.h
69 CORESOURCES = xproto.c xcb_types.c
70 COREPROTO   = $(CORESOURCES) $(COREHEADERS)
71
72 xcbinclude_HEADERS = xcb.h xcbext.h xcbxlib.h $(COREHEADERS) $(EXTHEADERS)
73
74 CFLAGS =
75 AM_CFLAGS = $(COPTFLAGS) $(CWARNFLAGS) $(CDEBUGFLAGS) $(XCBPROTO_CFLAGS) $(XPROTO_CFLAGS) $(XAU_CFLAGS) $(XDMCP_CFLAGS)
76 libXCB_la_LIBADD = $(XCBPROTO_LIBS) $(XPROTO_LIBS) $(XAU_LIBS) $(XDMCP_LIBS)
77 libXCB_la_SOURCES = \
78                 xcb_conn.c xcb_out.c xcb_in.c xcb_ext.c xcb_xid.c \
79                 xcb_list.c xcb_util.c xcb_xlib.c xcb_auth.c \
80                 $(COREPROTO) $(ESSENTIAL_EXTENSIONS)
81
82 BUILT_SOURCES = $(COREPROTO) $(EXTENSIONS)
83 CLEANFILES = $(COREPROTO) $(EXTENSIONS)
84 clean-local:
85         rmdir extensions || true
86
87 XCB_LIBS = $(top_builddir)/src/libXCB.la
88
89 libXCBcomposite_la_LIBADD = $(XCB_LIBS)
90 libXCBcomposite_la_SOURCES = extensions/composite.c extensions/composite.h
91 libXCBdamage_la_LIBADD = $(XCB_LIBS)
92 libXCBdamage_la_SOURCES = extensions/damage.c extensions/damage.h
93 libXCBdpms_la_LIBADD = $(XCB_LIBS)
94 libXCBdpms_la_SOURCES = extensions/dpms.c extensions/dpms.h
95 libXCBglx_la_LIBADD = $(XCB_LIBS)
96 libXCBglx_la_SOURCES = extensions/glx.c extensions/glx.h
97 libXCBrandr_la_LIBADD = $(XCB_LIBS)
98 libXCBrandr_la_SOURCES = extensions/randr.c extensions/randr.h
99 libXCBrecord_la_LIBADD = $(XCB_LIBS)
100 libXCBrecord_la_SOURCES = extensions/record.c extensions/record.h
101 libXCBrender_la_LIBADD = $(XCB_LIBS)
102 libXCBrender_la_SOURCES = extensions/render.c extensions/render.h
103 libXCBres_la_LIBADD = $(XCB_LIBS)
104 libXCBres_la_SOURCES = extensions/res.c extensions/res.h
105 libXCBshape_la_LIBADD = $(XCB_LIBS)
106 libXCBshape_la_SOURCES = extensions/shape.c extensions/shape.h
107 libXCBshm_la_LIBADD = $(XCB_LIBS)
108 libXCBshm_la_SOURCES = extensions/shm.c extensions/shm.h
109 libXCBsync_la_LIBADD = $(XCB_LIBS)
110 libXCBsync_la_SOURCES = extensions/sync.c extensions/sync.h
111 libXCBxevie_la_LIBADD = $(XCB_LIBS)
112 libXCBxevie_la_SOURCES = extensions/xevie.c extensions/xevie.h
113 libXCBxf86dri_la_LIBADD = $(XCB_LIBS)
114 libXCBxf86dri_la_SOURCES = extensions/xf86dri.c extensions/xf86dri.h
115 libXCBxfixes_la_LIBADD = $(XCB_LIBS)
116 libXCBxfixes_la_SOURCES = extensions/xfixes.c extensions/xfixes.h
117 libXCBxprint_la_LIBADD = $(XCB_LIBS)
118 libXCBxprint_la_SOURCES = extensions/xprint.c extensions/xprint.h
119 libXCBxv_la_LIBADD = $(XCB_LIBS)
120 libXCBxv_la_SOURCES = extensions/xv.c extensions/xv.h
121 libXCBxvmc_la_LIBADD = $(XCB_LIBS)
122 libXCBxvmc_la_SOURCES = extensions/xvmc.c extensions/xvmc.h
123
124 vpath %.xml $(XCBPROTO_XCBINCLUDEDIR) $(XCBPROTO_XCBINCLUDEDIR)/extensions
125
126 %.h: %.xml c-client.xsl
127         @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
128         $(XSLTPROC) --stringparam mode header \
129                     --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
130                     --stringparam extension-path \
131                                   $(XCBPROTO_XCBINCLUDEDIR)/extensions/ \
132                     -o $@ $(srcdir)/c-client.xsl $< 
133
134 %.c: %.xml c-client.xsl
135         @n=`dirname $*`; test -d $$n || (echo mkdir $$n; mkdir $$n)
136         $(XSLTPROC) --stringparam mode source \
137                     --stringparam base-path $(XCBPROTO_XCBINCLUDEDIR)/ \
138                     --stringparam extension-path \
139                                   $(XCBPROTO_XCBINCLUDEDIR)/extensions/ \
140                     -o $@ $(srcdir)/c-client.xsl $<