diff options
-rw-r--r-- | meta/recipes-devtools/pseudo/files/symver.patch | 26 | ||||
-rw-r--r-- | meta/recipes-devtools/pseudo/pseudo.inc | 4 |
2 files changed, 28 insertions, 2 deletions
diff --git a/meta/recipes-devtools/pseudo/files/symver.patch b/meta/recipes-devtools/pseudo/files/symver.patch new file mode 100644 index 0000000000..8d1b377ec0 --- /dev/null +++ b/meta/recipes-devtools/pseudo/files/symver.patch | |||
@@ -0,0 +1,26 @@ | |||
1 | When running as pseudo-nativesdk, we might need to run host binaries | ||
2 | linked against the host libc. Having a 2.14 libc dependency from memcpy is | ||
3 | problematic so instruct the linker to use older symbols. | ||
4 | |||
5 | Upstream-Status: Pending | ||
6 | |||
7 | RP 2012/4/22 | ||
8 | |||
9 | Index: pseudo-1.3/pseudo.h | ||
10 | =================================================================== | ||
11 | --- pseudo-1.3.orig/pseudo.h 2012-04-22 12:17:59.078909060 +0000 | ||
12 | +++ pseudo-1.3/pseudo.h 2012-04-22 12:32:42.954888587 +0000 | ||
13 | @@ -29,6 +29,13 @@ | ||
14 | int pseudo_set_value(const char *key, const char *value); | ||
15 | char *pseudo_get_value(const char *key); | ||
16 | |||
17 | +#ifdef __amd64__ | ||
18 | +#define GLIBC_COMPAT_SYMBOL(SYM) __asm__(".symver " #SYM "," #SYM "@GLIBC_2.2.5") | ||
19 | +#else | ||
20 | +#define GLIBC_COMPAT_SYMBOL(SYM) __asm__(".symver " #SYM "," #SYM "@GLIBC_2.0") | ||
21 | +#endif | ||
22 | +GLIBC_COMPAT_SYMBOL(memcpy); | ||
23 | + | ||
24 | #include "pseudo_tables.h" | ||
25 | |||
26 | extern void pseudo_debug_verbose(void); | ||
diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc index 3a37c694f0..8798018a4b 100644 --- a/meta/recipes-devtools/pseudo/pseudo.inc +++ b/meta/recipes-devtools/pseudo/pseudo.inc | |||
@@ -9,6 +9,8 @@ SECTION = "base" | |||
9 | LICENSE = "LGPL2.1" | 9 | LICENSE = "LGPL2.1" |
10 | DEPENDS = "sqlite3" | 10 | DEPENDS = "sqlite3" |
11 | 11 | ||
12 | SRC_URI_append_virtclass-nativesdk = " file://symver.patch" | ||
13 | |||
12 | FILES_${PN} = "${libdir}/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo" | 14 | FILES_${PN} = "${libdir}/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo" |
13 | FILES_${PN}-dbg += "${libdir}/pseudo/lib*/.debug" | 15 | FILES_${PN}-dbg += "${libdir}/pseudo/lib*/.debug" |
14 | PROVIDES += "virtual/fakeroot" | 16 | PROVIDES += "virtual/fakeroot" |
@@ -75,8 +77,6 @@ do_install_append_virtclass-nativesdk () { | |||
75 | mkdir -p ${D}${prefix}/lib/pseudo/lib | 77 | mkdir -p ${D}${prefix}/lib/pseudo/lib |
76 | cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/. | 78 | cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/. |
77 | fi | 79 | fi |
78 | |||
79 | create_wrapper ${D}${bindir}/pseudo LD_LIBRARY_PATH=${base_libdir}:${libdir} | ||
80 | } | 80 | } |
81 | 81 | ||
82 | BBCLASSEXTEND = "native nativesdk" | 82 | BBCLASSEXTEND = "native nativesdk" |