summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@digia.com>2012-10-29 12:59:09 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-07 16:55:50 +0100
commit21bd66e1ea06e466754ab06ee2c5f8b737bb4bd7 (patch)
tree2680ca806c003ca2b37d3f6c8b5431f51a3695fe /src/plugins/platforms/xcb/xcb-static/xcb-static.pro
parentf4121624e9067078249f0fad171c1f8c98271877 (diff)
Add configure option to minimize xcb runtime dependencies
Some of the xcb- libraries we depend upon are not (yet) common across distributions. This is problematic for binaries that should be working on different distributions. The patch mitigates this by: Adding the files from libxcb-proto (version 0.1.6), compiled with libxcb-1.5 xcb-util (version 0.3.9) xcb-util-image (version 0.3.9) xcb-util-keysyms (version 0.3.9) xcb-util-renderutil (version 0.3.8) xcb-util-wm (version 0.3.9) from xcb.freedesktop.org/dist to src/3rdparty/xcb. Adding a configure option '-qt-xcb' to use the sources instead of linking to the respective runtime libraries. Task-number: QTBUG-27803 Change-Id: I6ea87daa382871b2b9072a601511523fa0b9f44b Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Diffstat (limited to 'src/plugins/platforms/xcb/xcb-static/xcb-static.pro')
-rw-r--r--src/plugins/platforms/xcb/xcb-static/xcb-static.pro70
1 files changed, 70 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/xcb-static/xcb-static.pro b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
new file mode 100644
index 0000000000..0257826e09
--- /dev/null
+++ b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
@@ -0,0 +1,70 @@
+#
+# Statically compile in code for
+# libxcb-fixes, libxcb-randr, libxcb-shm, libxcb-sync, libxcb-image, libxcb-keysyms, libxcb-icccm, libxcb-renderutil
+#
+TEMPLATE = lib
+TARGET = xcb-static
+CONFIG += staticlib
+
+XCB_DIR = ../../../../3rdparty/xcb
+
+INCLUDEPATH += $$XCB_DIR/include/xcb $$XCB_DIR/sysinclude
+
+# ignore compiler warnings in 3rdparty code
+QMAKE_CFLAGS_STATIC_LIB+=-w
+
+#
+# libxcb
+#
+LIBXCB_DIR = $$XCB_DIR/libxcb
+
+SOURCES += \
+ $$LIBXCB_DIR/xfixes.c \
+ $$LIBXCB_DIR/randr.c \
+ $$LIBXCB_DIR/shm.c \
+ $$LIBXCB_DIR/sync.c \
+ $$LIBXCB_DIR/render.c \
+ $$LIBXCB_DIR/shape.c
+
+#
+# xcb-util
+#
+XCB_UTIL_DIR = $$XCB_DIR/xcb-util
+
+
+SOURCES += \
+ $$XCB_UTIL_DIR/xcb_aux.c \
+ $$XCB_UTIL_DIR/atoms.c \
+ $$XCB_UTIL_DIR/event.c
+
+#
+# xcb-util-image
+#
+XCB_IMAGE_DIR = $$XCB_DIR/xcb-util-image
+
+SOURCES += $$XCB_IMAGE_DIR/xcb_image.c
+
+#
+# xcb-util-keysyms
+#
+XCB_KEYSYMS_DIR = $$XCB_DIR/xcb-util-keysyms
+
+SOURCES += $$XCB_KEYSYMS_DIR/keysyms.c
+
+#
+# xcb-util-renderutil
+#
+
+XCB_RENDERUTIL_DIR = $$XCB_DIR/xcb-util-renderutil
+
+SOURCES += $$XCB_RENDERUTIL_DIR/util.c
+
+#
+# xcb-util-wm
+#
+XCB_WM_DIR = $$XCB_DIR/xcb-util-wm
+
+SOURCES += \
+ $$XCB_WM_DIR/icccm.c
+
+OTHER_FILES = $$XCB_DIR/README