diff options
| author | Xiaofeng Yan <xiaofeng.yan@windriver.com> | 2012-03-03 19:03:37 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-03-04 05:41:10 -0800 |
| commit | 65c9de58c1fa29d623589b50f501e2d1136b263d (patch) | |
| tree | 49e455fb759d2b12bbc97aa00ac5dfac87fd77a0 | |
| parent | d3b88ec6320348f564d9ce80f999e2a13b401be0 (diff) | |
| download | poky-65c9de58c1fa29d623589b50f501e2d1136b263d.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]
(From OE-Core rev: c9824083d4ab5bfd37fa1efdfbc3e93288cb47b6)
Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-graphics/xorg-lib/libx11-1.4.4/makekeys_crosscompile.patch | 76 |
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 @@ | |||
| 1 | Because the size of "unsigned long" is different between 32-bit | ||
| 2 | and 64-bit, judge whether target is 32-bit or 64-bit and tell | ||
| 3 | "makekey". | ||
| 4 | |||
| 5 | The error information from LSB Test suite is as follow: | ||
| 6 | VSW5TESTSUITE PURPOSE 7 | ||
| 7 | Assertion XStringToKeysym-7.(A) | ||
| 8 | When the string argument is the name of a KeySym in the | ||
| 9 | table with the prefix XK_ removed, then a call to | ||
| 10 | XStringToKeysym returns that KeySym. | ||
| 11 | METH: For each KeySym name in table with code G: | ||
| 12 | METH: Call XStringToKeysym to obtain the KeySym defined for that string. | ||
| 13 | METH: Verify that XStringToKeysym did not return NoSymbol. | ||
| 14 | METH: Verify that the returned string is correct. | ||
| 15 | CHECK: XStringToKeysym-7 1, line 130 | ||
| 16 | CHECK: XStringToKeysym-7 2, line 140 | ||
| 17 | CHECK: XStringToKeysym-7 3, line 150 | ||
| 18 | CHECK: XStringToKeysym-7 4, line 160 | ||
| 19 | CHECK: XStringToKeysym-7 5, line 170 | ||
| 20 | CHECK: XStringToKeysym-7 6, line 180 | ||
| 21 | CHECK: XStringToKeysym-7 7, line 190 | ||
| 22 | CHECK: XStringToKeysym-7 8, line 200 | ||
| 23 | CHECK: XStringToKeysym-7 9, line 210 | ||
| 24 | CHECK: XStringToKeysym-7 10, line 220 | ||
| 25 | CHECK: XStringToKeysym-7 11, line 230 | ||
| 26 | CHECK: XStringToKeysym-7 12, line 240 | ||
| 27 | CHECK: XStringToKeysym-7 13, line 250 | ||
| 28 | CHECK: XStringToKeysym-7 14, line 260 | ||
| 29 | CHECK: XStringToKeysym-7 15, line 270 | ||
| 30 | CHECK: XStringToKeysym-7 16, line 280 | ||
| 31 | CHECK: XStringToKeysym-7 17, line 290 | ||
| 32 | CHECK: XStringToKeysym-7 18, line 300 | ||
| 33 | CHECK: XStringToKeysym-7 19, line 310 | ||
| 34 | CHECK: XStringToKeysym-7 20, line 320 | ||
| 35 | |||
| 36 | Upstream-Status: Pending | ||
| 37 | |||
| 38 | Signed-off-by: dbuitenh@windriver.com | ||
| 39 | |||
| 40 | --- libX11-1.3.4.orig/src/util/makekeys.c 2010-01-15 09:11:36.000000000 +0800 | ||
| 41 | +++ libX11-1.3.4/src/util/makekeys.c 2011-05-24 19:04:25.454774908 +0800 | ||
| 42 | @@ -33,6 +33,7 @@ | ||
| 43 | #include <X11/keysymdef.h> | ||
| 44 | #include <stdio.h> | ||
| 45 | #include <stdlib.h> | ||
| 46 | +#include <stdint.h> | ||
| 47 | |||
| 48 | typedef unsigned long Signature; | ||
| 49 | |||
| 50 | @@ -124,7 +125,12 @@ | ||
| 51 | name = info[i].name; | ||
| 52 | sig = 0; | ||
| 53 | while ((c = *name++)) | ||
| 54 | - sig = (sig << 1) + c; | ||
| 55 | +#ifdef USE32 | ||
| 56 | + sig = (uint32_t)(sig << 1) + c; | ||
| 57 | +#else | ||
| 58 | + sig = (uint64_t)(sig << 1) + c; | ||
| 59 | +#endif | ||
| 60 | + | ||
| 61 | first = j = sig % z; | ||
| 62 | for (k = 0; tab[j]; k++) { | ||
| 63 | j += first + 1; | ||
| 64 | @@ -163,7 +169,11 @@ | ||
| 65 | name = info[i].name; | ||
| 66 | sig = 0; | ||
| 67 | while ((c = *name++)) | ||
| 68 | - sig = (sig << 1) + c; | ||
| 69 | +#ifdef USE32 | ||
| 70 | + sig = (uint32_t)(sig << 1) + c; | ||
| 71 | +#else | ||
| 72 | + sig = (uint64_t)(sig << 1) + c; | ||
| 73 | +#endif | ||
| 74 | first = j = sig % z; | ||
| 75 | while (offsets[j]) { | ||
| 76 | j += first + 1; | ||
