> On 10/21/2015 05:49 AM, Khem Raj wrote:
>>
>>>  On Oct 20, 2015, at 2:49 AM,wenzong.fan at windriver.com wrote:
>>>
>>>  From: Wenzong Fan <wenzong.fan at windriver.com>
>>>
>>>  'ln --relative' doesn't work on Ubuntu 12.04 that has ln 8.13. The
> >
> >  OE-Core has lnr script you can use that.
> /
> It's good to know this. I did a grep:
>
> $ grep lnr -r *
> meta/recipes-kernel/kmod/kmod_git.bb:        lnr ${D}${base_bindir}/kmod
> ${D}${base_bindir}/lsmod
> meta/recipes-kernel/kmod/kmod_git.bb:                lnr
> ${D}${base_bindir}/kmod ${D}${base_sbindir}/${tool}
> meta/recipes-core/systemd/systemd_225.bb:  sed -i -e 's:\$(LN_S)
> --relative -f:lnr:g' ${S}/Makefile.am
> meta/recipes-core/systemd/systemd_225.bb:  sed -i -e 's:\$(LN_S)
> --relative:lnr:g' ${S}/Makefile.am
> meta/recipes-core/ncurses/ncurses.inc:            # Use lnr to ensure
> this is a relative link despite absolute paths
> meta/recipes-core/ncurses/ncurses.inc:            lnr
> ${D}${base_libdir}/libtinfo.so.5 ${D}${libdir}/libtinfo.so
> meta/classes/populate_sdk_ext.bbclass:     lnr
> ${SDK_OUTPUT}/${SDKPATH}/${scriptrelpath}/devtool
> ${SDK_OUTPUT}/${SDKPATHNATIVE}${bindir_nativesdk}/devtool
> meta/classes/populate_sdk_ext.bbclass:     lnr
> ${SDK_OUTPUT}/${SDKPATH}/${scriptrelpath}/recipetool
> ${SDK_OUTPUT}/${SDKPATHNATIVE}${bindir_nativesdk}/recipetool
>
> Looks it only used by bb/bbclass.
>
> I prefer to add a dependency here rather than patch Makefile with 'lnr'.
> Agreed?
>

This approach makes sense to me.

> Thanks
> Wenzong
>
>>
>>>  changes involved by SELinux commit:
>>>
>>>    commit 71393a181d63c9baae5fe8dcaeb9411d1f253998
>>>    Author: Steve Lawrence <slawrence at tresys.com>
>>>    Date:   Mon Oct 20 15:46:17 2014 -0400
>>>
>>>      libselinux: libsepol: use ln --relative to create .so symlinks
>>>
>>> The current build system assumes SHLIBDIR is ../../ relative to LIBDIR. >>> However, this isn't always the case. For example, Arch Linux sets both
>>>      LIBDIR and SHLIBDIR to /usr/lib, which results in broken symlinks.
>>>
>>>      Instead of making that assumption, create .so symlinks using ln
>>> --relative so that the correct relative paths are used. Note that this >>> adds a dependency for the build system to use coretuils-8.16 or later.
>>>
>>>  Just depends on coreutils-native to fix the issue.
>>>
>>>  Signed-off-by: Wenzong Fan <wenzong.fan at windriver.com>
>>>  ---
>>>  recipes-security/selinux/libselinux.inc | 2 +-
>>>  recipes-security/selinux/libsepol.inc   | 2 ++
>>>  2 files changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/recipes-security/selinux/libselinux.inc b/recipes-security/selinux/libselinux.inc
>>>  index d571a7c..b0f7bc4 100644
>>>  --- a/recipes-security/selinux/libselinux.inc
>>>  +++ b/recipes-security/selinux/libselinux.inc
>>>  @@ -7,7 +7,7 @@ LICENSE = "PD"
>>>
>>>  inherit lib_package pythonnative
>>>
>>>  -DEPENDS += "libsepol python libpcre swig-native"
>>>  +DEPENDS += "libsepol python libpcre swig-native coreutils-native"
>>>
>>>  PACKAGES += "${PN}-python"
>>> FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/selinux/*" >>> diff --git a/recipes-security/selinux/libsepol.inc b/recipes-security/selinux/libsepol.inc
>>>  index b24ed28..9234f24 100644
>>>  --- a/recipes-security/selinux/libsepol.inc
>>>  +++ b/recipes-security/selinux/libsepol.inc
>>>  @@ -8,6 +8,8 @@ LICENSE = "LGPLv2+"
>>>
>>>  inherit lib_package
>>>
>>>  +DEPENDS += "coreutils-native"
>>>  +
>>>  # Change RANLIB for cross compiling, use host-tools $(AR) rather than
>>>  # local ranlib.
>>>  EXTRA_OEMAKE += "RANLIB='$(AR) s'"
>>>  --
>>>  1.9.1

+1, this patch resolved the issue nicely for me! :)

Thanks,
-Chris
--
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to