summaryrefslogtreecommitdiff
path: root/recipes/xorg-lib/libx11.inc
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2010-06-24 20:09:24 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2010-06-25 15:44:27 +0200
commit82dd23467d2a7dd7c3c2b3a32635f8e925c7d589 (patch)
treed04ae6ce563ea118c26c3ba546a3b9639bc5e4d7 /recipes/xorg-lib/libx11.inc
parent2e0f5099dae869f19984b67a75ff166b345b31db (diff)
libx11: convert to BBCLASSEXTEND
* common patches in new libx11.inc (some needed to be renamed to keep same name across version) * keep one common dir with diet-x11/libx11-trip variants * enable xcb again for non-native non-sdk versions newer than 1.3 and add libx11-xcb package, XCB seems more popular then in 2007 (xls* projects were coverted lately, so this actually reverts patch from bug #3372) * also xcb enabled makes mesa build after libxcb was staged (mesa itself has xcb disabled, but if it founds libxcb, then it expects to find libx11 with xcb too) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'recipes/xorg-lib/libx11.inc')
-rw-r--r--recipes/xorg-lib/libx11.inc52
1 files changed, 52 insertions, 0 deletions
diff --git a/recipes/xorg-lib/libx11.inc b/recipes/xorg-lib/libx11.inc
new file mode 100644
index 0000000000..3a1ad95c5e
--- /dev/null
+++ b/recipes/xorg-lib/libx11.inc
@@ -0,0 +1,52 @@
+require xorg-lib-common.inc
+
+DESCRIPTION = "Base X libs."
+COMMON_DEPENDS = "util-macros xtrans libxdmcp libxau \
+ bigreqsproto xproto xextproto xcmiscproto \
+ xf86bigfontproto kbproto inputproto xproto-native"
+
+DEPENDS = "libxcb ${COMMON_DEPENDS}"
+DEPENDS_virtclass-native = "${COMMON_DEPENDS}"
+DEPENDS_virtclass-nativesdk = "${COMMON_DEPENDS}"
+
+FILESPATHPKG .= ":libx11-${PV}:libx11"
+BBCLASSEXTEND = "native nativesdk"
+PROVIDES = "virtual/libx11"
+PE = "1"
+
+PACKAGES =+ "${PN}-xcb"
+
+FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${libdir}/X11/Xcms.txt"
+FILES_${PN}-xcb += "${libdir}/libX11-xcb.so.*"
+FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
+
+XORG_PN = "libX11"
+
+EXTRA_OECONF += " --with-xcb --with-keysymdef=${STAGING_INCDIR}/X11/keysymdef.h"
+EXTRA_OECONF_virtclass-native = " --without-xcb"
+EXTRA_OECONF_virtclass-nativesdk = " --without-xcb"
+
+# Below option is added to overcome the GCC bug on ARM
+# see http://gcc.gnu.org/PR42981 for further details.
+# We could potentially take it off when its fixed in gcc 4.5
+
+CFLAGS_append_arm = " -fforward-propagate "
+
+SRC_URI += " file://keysymdef_include.patch \
+ file://x11_disable_makekeys.patch \
+"
+
+do_compile_prepend() {
+ (
+ unset CC LD CXX CCLD CFLAGS CPPFLAGS LDFLAGS CXXFLAGS
+ cd src/util;
+ mv makekeys.c.orig makekeys.c || true
+ # MIN_REHASH 10 is only in 1.0.1
+ sed -i -e 's:MIN_REHASH 10:MIN_REHASH 16:g' makekeys.c
+ sed -i -e 's:MIN_REHASH 15:MIN_REHASH 16:g' makekeys.c
+ touch makekeys-makekeys.o ; ${BUILD_CC} ${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE} makekeys.c -o makekeys
+ # mv to stop it getting rebuilt
+ mv makekeys.c makekeys.c.orig
+ cd ../../
+ ) || exit 1
+}