[Xcb] [PATCH libxcb 1/1] optionally build the GE extension
Christian Linhart
chris at demorecorder.com
Fri Jan 20 19:31:19 UTC 2017
xcb contains an xml-definition for the GenericEvent extension
but this extension was neither generated nor built.
This patch enables optional building of the GenericEvent extension
with configure option --enable-ge
By default, the GenericEvent extension is not built.
Normally this is not needed by application programs
because there is implicit support for the GE-extension
for the specific events built with this extension.
But it may be useful for X-protocol analyzers and stuff like that.
Signed-off-by: Christian Linhart <chris at demorecorder.com>
---
Makefile.am | 3 +++
configure.ac | 3 +++
src/Makefile.am | 7 +++++++
xcb-ge.pc.in | 11 +++++++++++
4 files changed, 24 insertions(+)
create mode 100644 xcb-ge.pc.in
diff --git a/Makefile.am b/Makefile.am
index 2475b6e..57c3a7b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -80,14 +80,17 @@ pkgconfig_DATA += xcb-xtest.pc
endif
if BUILD_XV
pkgconfig_DATA += xcb-xv.pc
endif
if BUILD_XVMC
pkgconfig_DATA += xcb-xvmc.pc
endif
+if BUILD_GE
+pkgconfig_DATA += xcb-ge.pc
+endif
AM_TESTS_ENVIRONMENT = \
AM_SRCDIR=${srcdir}
TESTS=check-pc-requires
diff --git a/configure.ac b/configure.ac
index ec31542..d3165c6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -216,14 +216,15 @@ case $host_os in
esac
XCB_EXTENSION(Composite, yes)
XCB_EXTENSION(Damage, yes)
XCB_EXTENSION(DPMS, yes)
XCB_EXTENSION(DRI2, yes)
XCB_EXTENSION(DRI3, $have_sendmsg)
+XCB_EXTENSION(GE, no)
XCB_EXTENSION(GLX, yes)
XCB_EXTENSION(Present, yes)
XCB_EXTENSION(RandR, yes)
XCB_EXTENSION(Record, yes)
XCB_EXTENSION(Render, yes)
XCB_EXTENSION(Resource, yes)
XCB_EXTENSION(Screensaver, yes)
@@ -267,14 +268,15 @@ tests/Makefile
AC_CONFIG_FILES([
xcb.pc
xcb-composite.pc
xcb-damage.pc
xcb-dpms.pc
xcb-dri2.pc
xcb-dri3.pc
+xcb-ge.pc
xcb-glx.pc
xcb-present.pc
xcb-randr.pc
xcb-record.pc
xcb-render.pc
xcb-res.pc
xcb-screensaver.pc
@@ -314,14 +316,15 @@ echo " XCB buffer size.....: ${xcb_queue_buffer_size}"
echo ""
echo " X11 extensions"
echo " Composite...........: ${BUILD_COMPOSITE}"
echo " Damage..............: ${BUILD_DAMAGE}"
echo " Dpms................: ${BUILD_DPMS}"
echo " Dri2................: ${BUILD_DRI2}"
echo " Dri3................: ${BUILD_DRI3}"
+echo " GenericEvent........: ${BUILD_GE}"
echo " Glx.................: ${BUILD_GLX}"
echo " Randr...............: ${BUILD_RANDR}"
echo " Record..............: ${BUILD_RECORD}"
echo " Render..............: ${BUILD_RENDER}"
echo " Resource............: ${BUILD_RESOURCE}"
echo " Screensaver.........: ${BUILD_SCREENSAVER}"
echo " selinux.............: ${BUILD_SELINUX}"
diff --git a/src/Makefile.am b/src/Makefile.am
index e06e70b..17b64a8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -228,14 +228,21 @@ EXTSOURCES += xvmc.c
if BUILD_XVMC
lib_LTLIBRARIES += libxcb-xvmc.la
libxcb_xvmc_la_LDFLAGS = -version-info 0:0:0 -no-undefined @lt_enable_auto_import@
libxcb_xvmc_la_LIBADD = $(XCB_LIBS)
nodist_libxcb_xvmc_la_SOURCES = xvmc.c xvmc.h
endif
+EXTSOURCES += ge.c
+if BUILD_GE
+lib_LTLIBRARIES += libxcb-ge.la
+libxcb_ge_la_LDFLAGS = -version-info 0:0:0 -no-undefined @lt_enable_auto_import@
+libxcb_ge_la_LIBADD = $(XCB_LIBS)
+nodist_libxcb_ge_la_SOURCES = ge.c ge.h
+endif
EXTHEADERS=$(EXTSOURCES:.c=.h)
xcbinclude_HEADERS = xcb.h xcbext.h
if XCB_HAVE_WIN32
xcbinclude_HEADERS += xcb_windefs.h
endif
nodist_xcbinclude_HEADERS = $(EXTHEADERS)
diff --git a/xcb-ge.pc.in b/xcb-ge.pc.in
new file mode 100644
index 0000000..b5f380d
--- /dev/null
+++ b/xcb-ge.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: XCB GenericEvent
+Description: XCB GenericEvent Extension
+Version: @PACKAGE_VERSION@
+Requires.private: xcb
+Libs: -L${libdir} -lxcb-ge
+Cflags: -I${includedir}
--
2.1.4
More information about the Xcb
mailing list