Split all non-essential extensions into their own separate libraries, named
libXCBextname. To use extension extname, include extname.h and link with -lXCBextname. This allows extensions to change without bumping the main libXCB version. bigreq and xc_misc remain in libXCB, because XCB uses them internally to make big requests and to allocate XIDs, respectively.
This commit is contained in:
parent
fc577b81bf
commit
ff38c17c48
|
@ -1,4 +1,21 @@
|
||||||
lib_LTLIBRARIES = libXCB.la
|
lib_LTLIBRARIES = libXCB.la \
|
||||||
|
libXCBcomposite.la \
|
||||||
|
libXCBdamage.la \
|
||||||
|
libXCBdpms.la \
|
||||||
|
libXCBglx.la \
|
||||||
|
libXCBrandr.la \
|
||||||
|
libXCBrecord.la \
|
||||||
|
libXCBrender.la \
|
||||||
|
libXCBres.la \
|
||||||
|
libXCBshape.la \
|
||||||
|
libXCBshm.la \
|
||||||
|
libXCBsync.la \
|
||||||
|
libXCBxevie.la \
|
||||||
|
libXCBxf86dri.la \
|
||||||
|
libXCBxfixes.la \
|
||||||
|
libXCBxprint.la \
|
||||||
|
libXCBxv.la \
|
||||||
|
libXCBxvmc.la
|
||||||
|
|
||||||
EXTHEADERS = \
|
EXTHEADERS = \
|
||||||
extensions/bigreq.h \
|
extensions/bigreq.h \
|
||||||
|
@ -42,6 +59,12 @@ EXTSOURCES = \
|
||||||
extensions/xvmc.c
|
extensions/xvmc.c
|
||||||
EXTENSIONS = $(EXTSOURCES) $(EXTHEADERS)
|
EXTENSIONS = $(EXTSOURCES) $(EXTHEADERS)
|
||||||
|
|
||||||
|
ESSENTIAL_EXTENSIONS = \
|
||||||
|
extensions/bigreq.h \
|
||||||
|
extensions/bigreq.c \
|
||||||
|
extensions/xc_misc.h \
|
||||||
|
extensions/xc_misc.c
|
||||||
|
|
||||||
COREHEADERS = xproto.h xcb_types.h
|
COREHEADERS = xproto.h xcb_types.h
|
||||||
CORESOURCES = xproto.c xcb_types.c
|
CORESOURCES = xproto.c xcb_types.c
|
||||||
COREPROTO = $(CORESOURCES) $(COREHEADERS)
|
COREPROTO = $(CORESOURCES) $(COREHEADERS)
|
||||||
|
@ -54,13 +77,50 @@ libXCB_la_LIBADD = $(XCBPROTO_LIBS) $(XPROTO_LIBS) $(XAU_LIBS) $(XDMCP_LIBS)
|
||||||
libXCB_la_SOURCES = \
|
libXCB_la_SOURCES = \
|
||||||
xcb_conn.c xcb_out.c xcb_in.c xcb_ext.c xcb_xid.c \
|
xcb_conn.c xcb_out.c xcb_in.c xcb_ext.c xcb_xid.c \
|
||||||
xcb_list.c xcb_util.c xcb_xlib.c xcb_auth.c \
|
xcb_list.c xcb_util.c xcb_xlib.c xcb_auth.c \
|
||||||
$(COREPROTO) $(EXTENSIONS)
|
$(COREPROTO) $(ESSENTIAL_EXTENSIONS)
|
||||||
|
|
||||||
BUILT_SOURCES = $(COREPROTO) $(EXTENSIONS)
|
BUILT_SOURCES = $(COREPROTO) $(EXTENSIONS)
|
||||||
CLEANFILES = $(COREPROTO) $(EXTENSIONS)
|
CLEANFILES = $(COREPROTO) $(EXTENSIONS)
|
||||||
clean-local:
|
clean-local:
|
||||||
rmdir extensions || true
|
rmdir extensions || true
|
||||||
|
|
||||||
|
XCB_LIBS = $(top_builddir)/src/libXCB.la
|
||||||
|
|
||||||
|
libXCBcomposite_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBcomposite_la_SOURCES = extensions/composite.c extensions/composite.h
|
||||||
|
libXCBdamage_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBdamage_la_SOURCES = extensions/damage.c extensions/damage.h
|
||||||
|
libXCBdpms_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBdpms_la_SOURCES = extensions/dpms.c extensions/dpms.h
|
||||||
|
libXCBglx_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBglx_la_SOURCES = extensions/glx.c extensions/glx.h
|
||||||
|
libXCBrandr_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBrandr_la_SOURCES = extensions/randr.c extensions/randr.h
|
||||||
|
libXCBrecord_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBrecord_la_SOURCES = extensions/record.c extensions/record.h
|
||||||
|
libXCBrender_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBrender_la_SOURCES = extensions/render.c extensions/render.h
|
||||||
|
libXCBres_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBres_la_SOURCES = extensions/res.c extensions/res.h
|
||||||
|
libXCBshape_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBshape_la_SOURCES = extensions/shape.c extensions/shape.h
|
||||||
|
libXCBshm_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBshm_la_SOURCES = extensions/shm.c extensions/shm.h
|
||||||
|
libXCBsync_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBsync_la_SOURCES = extensions/sync.c extensions/sync.h
|
||||||
|
libXCBxevie_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxevie_la_SOURCES = extensions/xevie.c extensions/xevie.h
|
||||||
|
libXCBxf86dri_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxf86dri_la_SOURCES = extensions/xf86dri.c extensions/xf86dri.h
|
||||||
|
libXCBxfixes_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxfixes_la_SOURCES = extensions/xfixes.c extensions/xfixes.h
|
||||||
|
libXCBxprint_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxprint_la_SOURCES = extensions/xprint.c extensions/xprint.h
|
||||||
|
libXCBxv_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxv_la_SOURCES = extensions/xv.c extensions/xv.h
|
||||||
|
libXCBxvmc_la_LIBADD = $(XCB_LIBS)
|
||||||
|
libXCBxvmc_la_SOURCES = extensions/xvmc.c extensions/xvmc.h
|
||||||
|
|
||||||
vpath %.xml $(XCBPROTO_XCBINCLUDEDIR) $(XCBPROTO_XCBINCLUDEDIR)/extensions
|
vpath %.xml $(XCBPROTO_XCBINCLUDEDIR) $(XCBPROTO_XCBINCLUDEDIR)/extensions
|
||||||
|
|
||||||
%.h: %.xml c-client.xsl
|
%.h: %.xml c-client.xsl
|
||||||
|
|
Loading…
Reference in New Issue