]> code.ossystems Code Review - openembedded-core.git/commitdiff
zlib: clean up base_libdir symlink
authorRoss Burton <ross.burton@intel.com>
Wed, 20 May 2015 14:38:49 +0000 (15:38 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 21 May 2015 09:48:47 +0000 (10:48 +0100)
libz.so symbolic link created in ${libdir} is
../../${base_libdir}/libz.so.1.2.8.  This doesn't work if base_libdir or libdir
is changed, so use oe.path.relative to construct the correct path at build time.

Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/recipes-core/zlib/zlib_1.2.8.bb

index ca0ba3ff6ee1ee075717e00407c5333e75fb6ddc..9470adb1beafa237365f2321c09e1e98852cd23a 100644 (file)
@@ -6,7 +6,6 @@ SECTION = "libs"
 LICENSE = "Zlib"
 LIC_FILES_CHKSUM = "file://zlib.h;beginline=4;endline=23;md5=fde612df1e5933c428b73844a0c494fd"
 
-
 SRC_URI = "http://www.zlib.net/${BPN}-${PV}.tar.xz \
            file://remove.ldconfig.call.patch \
            file://Makefile-runtests.patch \
@@ -45,16 +44,15 @@ do_install_ptest() {
        install ${B}/minigzipsh ${D}${PTEST_PATH}
 }
 
-# We move zlib shared libraries for target builds to avoid
-# qa warnings.
-#
+# Move zlib shared libraries for target builds to $base_libdir so the library
+# can be used in early boot before $prefix is mounted.
 do_install_append_class-target() {
        if [ ${base_libdir} != ${libdir} ]
        then
                mkdir -p ${D}/${base_libdir}
                mv ${D}/${libdir}/libz.so.* ${D}/${base_libdir}
-               tmp=`readlink ${D}/${libdir}/libz.so`
-               ln -sf ../../${base_libdir}/$tmp ${D}/${libdir}/libz.so
+               libname=`readlink ${D}/${libdir}/libz.so`
+               ln -sf ${@oe.path.relative("${libdir}", "${base_libdir}")}/$libname ${D}${libdir}/libz.so
        fi
 }