summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/pseudo/files/symver.patch26
-rw-r--r--meta/recipes-devtools/pseudo/pseudo.inc4
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 @@
1When running as pseudo-nativesdk, we might need to run host binaries
2linked against the host libc. Having a 2.14 libc dependency from memcpy is
3problematic so instruct the linker to use older symbols.
4
5Upstream-Status: Pending
6
7RP 2012/4/22
8
9Index: 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"
9LICENSE = "LGPL2.1" 9LICENSE = "LGPL2.1"
10DEPENDS = "sqlite3" 10DEPENDS = "sqlite3"
11 11
12SRC_URI_append_virtclass-nativesdk = " file://symver.patch"
13
12FILES_${PN} = "${libdir}/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo" 14FILES_${PN} = "${libdir}/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo"
13FILES_${PN}-dbg += "${libdir}/pseudo/lib*/.debug" 15FILES_${PN}-dbg += "${libdir}/pseudo/lib*/.debug"
14PROVIDES += "virtual/fakeroot" 16PROVIDES += "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
82BBCLASSEXTEND = "native nativesdk" 82BBCLASSEXTEND = "native nativesdk"