pseudo: Ensure the correct libraries are used at runtime

There can be a conflict between the nativesdk libc and the host system's
libc. It is assumed the nativesdk version is of an equal or higher version.
This is a particular issue for pseudo if its loading a system binary
since the system's libc might be used of an older verison which would
then confuse libpseudo.so when loaded as a preload.

To avoid this, set LD_LIBRARY_PATH so the nativesdk libc is always
used.

Since we now use --without-rpath, we can remove the MAKEOPTS RPATH workaround.

[YOCTO #2299]

(From OE-Core rev: a481fe3b9883aa744be3253e2b4b27e6e46eb059)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2012-04-15 16:00:42 +01:00
parent 5c006a460f
commit f562e2a393
3 changed files with 4 additions and 5 deletions

View File

@ -13,10 +13,7 @@ FILES_${PN} = "${libdir}/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/p
FILES_${PN}-dbg += "${libdir}/pseudo/lib*/.debug"
PROVIDES += "virtual/fakeroot"
# In the nativesdk case, we'll already search the searchpaths
# pseudo tries to build in so override RPATH
MAKEOPTS = ""
MAKEOPTS_virtclass-nativesdk = "'RPATH='"
inherit siteinfo
@ -78,6 +75,8 @@ do_install_append_virtclass-nativesdk () {
mkdir -p ${D}${prefix}/lib/pseudo/lib
cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/.
fi
create_wrapper ${D}${bindir}/pseudo LD_LIBRARY_PATH=${base_libdir}:${libdir}
}
BBCLASSEXTEND = "native nativesdk"

View File

@ -1,6 +1,6 @@
require pseudo.inc
PR = "r8"
PR = "r9"
SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"

View File

@ -2,7 +2,7 @@ require pseudo.inc
SRCREV = "f0375c9aaefbccfd41aebbf6d332bb4d9e8f980c"
PV = "1.3+git${SRCPV}"
PR = "r23"
PR = "r24"
DEFAULT_PREFERENCE = "-1"