aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/xorg-lib
diff options
context:
space:
mode:
authorXiaofeng Yan <xiaofeng.yan@windriver.com>2012-03-03 19:03:37 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-03-04 04:22:51 -0800
commitc9824083d4ab5bfd37fa1efdfbc3e93288cb47b6 (patch)
tree611098497d5d1f35add9350386a25d238844acde /meta/recipes-graphics/xorg-lib
parent1d262630853e65be9167d904b934b581acf64182 (diff)
downloadopenembedded-core-c9824083d4ab5bfd37fa1efdfbc3e93288cb47b6.tar.gz
libx11-1.4.4: Add patch makekeys_crosscompile.patch
LSB 4.1 complain a host contamination error from libx11 because of absent patch "makekeys_crosscompile.patch" from libx11-trim-1.4.4. The error from LSB Test Suite is as follow: VSW5TESTSUITE PURPOSE 7 Assertion XStringToKeysym-7.(A) When the string argument is the name of a KeySym in the table with the prefix XK_ removed, then a call to XStringToKeysym returns that KeySym. METH: For each KeySym name in table with code G: METH: Call XStringToKeysym to obtain the KeySym defined for that string. METH: Verify that XStringToKeysym did not return NoSymbol. METH: Verify that the returned string is correct. CHECK: XStringToKeysym-7 1, line 130 CHECK: XStringToKeysym-7 2, line 140 CHECK: XStringToKeysym-7 3, line 150 CHECK: XStringToKeysym-7 4, line 160 CHECK: XStringToKeysym-7 5, line 170 CHECK: XStringToKeysym-7 6, line 180 CHECK: XStringToKeysym-7 7, line 190 CHECK: XStringToKeysym-7 8, line 200 CHECK: XStringToKeysym-7 9, line 210 CHECK: XStringToKeysym-7 10, line 220 CHECK: XStringToKeysym-7 11, line 230 CHECK: XStringToKeysym-7 12, line 240 CHECK: XStringToKeysym-7 13, line 250 CHECK: XStringToKeysym-7 14, line 260 CHECK: XStringToKeysym-7 15, line 270 CHECK: XStringToKeysym-7 16, line 280 CHECK: XStringToKeysym-7 17, line 290 CHECK: XStringToKeysym-7 18, line 300 CHECK: XStringToKeysym-7 19, line 310 CHECK: XStringToKeysym-7 20, line 320 [YOCTO #1970] Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics/xorg-lib')
-rw-r--r--meta/recipes-graphics/xorg-lib/libx11-1.4.4/makekeys_crosscompile.patch76
1 files changed, 76 insertions, 0 deletions
diff --git a/meta/recipes-graphics/xorg-lib/libx11-1.4.4/makekeys_crosscompile.patch b/meta/recipes-graphics/xorg-lib/libx11-1.4.4/makekeys_crosscompile.patch
new file mode 100644
index 0000000000..daf3696b34
--- /dev/null
+++ b/meta/recipes-graphics/xorg-lib/libx11-1.4.4/makekeys_crosscompile.patch
@@ -0,0 +1,76 @@
+Because the size of "unsigned long" is different between 32-bit
+and 64-bit, judge whether target is 32-bit or 64-bit and tell
+"makekey".
+
+The error information from LSB Test suite is as follow:
+VSW5TESTSUITE PURPOSE 7
+Assertion XStringToKeysym-7.(A)
+When the string argument is the name of a KeySym in the
+table with the prefix XK_ removed, then a call to
+XStringToKeysym returns that KeySym.
+METH: For each KeySym name in table with code G:
+METH: Call XStringToKeysym to obtain the KeySym defined for that string.
+METH: Verify that XStringToKeysym did not return NoSymbol.
+METH: Verify that the returned string is correct.
+CHECK: XStringToKeysym-7 1, line 130
+CHECK: XStringToKeysym-7 2, line 140
+CHECK: XStringToKeysym-7 3, line 150
+CHECK: XStringToKeysym-7 4, line 160
+CHECK: XStringToKeysym-7 5, line 170
+CHECK: XStringToKeysym-7 6, line 180
+CHECK: XStringToKeysym-7 7, line 190
+CHECK: XStringToKeysym-7 8, line 200
+CHECK: XStringToKeysym-7 9, line 210
+CHECK: XStringToKeysym-7 10, line 220
+CHECK: XStringToKeysym-7 11, line 230
+CHECK: XStringToKeysym-7 12, line 240
+CHECK: XStringToKeysym-7 13, line 250
+CHECK: XStringToKeysym-7 14, line 260
+CHECK: XStringToKeysym-7 15, line 270
+CHECK: XStringToKeysym-7 16, line 280
+CHECK: XStringToKeysym-7 17, line 290
+CHECK: XStringToKeysym-7 18, line 300
+CHECK: XStringToKeysym-7 19, line 310
+CHECK: XStringToKeysym-7 20, line 320
+
+Upstream-Status: Pending
+
+Signed-off-by: dbuitenh@windriver.com
+
+--- libX11-1.3.4.orig/src/util/makekeys.c 2010-01-15 09:11:36.000000000 +0800
++++ libX11-1.3.4/src/util/makekeys.c 2011-05-24 19:04:25.454774908 +0800
+@@ -33,6 +33,7 @@
+ #include <X11/keysymdef.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <stdint.h>
+
+ typedef unsigned long Signature;
+
+@@ -124,7 +125,12 @@
+ name = info[i].name;
+ sig = 0;
+ while ((c = *name++))
+- sig = (sig << 1) + c;
++#ifdef USE32
++ sig = (uint32_t)(sig << 1) + c;
++#else
++ sig = (uint64_t)(sig << 1) + c;
++#endif
++
+ first = j = sig % z;
+ for (k = 0; tab[j]; k++) {
+ j += first + 1;
+@@ -163,7 +169,11 @@
+ name = info[i].name;
+ sig = 0;
+ while ((c = *name++))
+- sig = (sig << 1) + c;
++#ifdef USE32
++ sig = (uint32_t)(sig << 1) + c;
++#else
++ sig = (uint64_t)(sig << 1) + c;
++#endif
+ first = j = sig % z;
+ while (offsets[j]) {
+ j += first + 1;