Patchwork [3/3] ncurses: use lnr instead of python code

login
register
mail settings
Submitter Ross Burton
Date March 3, 2014, 8:23 p.m.
Message ID <1393878215-27447-3-git-send-email-ross.burton@intel.com>
Download mbox | patch
Permalink /patch/67899/
State Accepted
Commit 2de0100e469c3fcf83254f5e17930681b9b7db12
Headers show

Comments

Ross Burton - March 3, 2014, 8:23 p.m.
Drop the use of custom Python code and instead use the new lnr script to
generate relative symlinks.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-core/ncurses/ncurses.inc |   14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

Patch

diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc
index a94466a..f0a4044 100644
--- a/meta/recipes-core/ncurses/ncurses.inc
+++ b/meta/recipes-core/ncurses/ncurses.inc
@@ -147,12 +147,7 @@  _install_cfgs = "\
   PKG_CONFIG_LIBDIR='${libdir}/pkgconfig' \
 "
 
-python do_install () {
-    bb.build.exec_func("shell_do_install", d)
-    oe.path.make_relative_symlink(d.expand("${D}${libdir}/libtinfo.so"))
-}
-
-shell_do_install() {
+do_install() {
         # Order of installation is important; widec installs a 'curses.h'
         # header with more definitions and must be installed last hence.
         # Compatibility of these headers will be checked in 'do_test()'.
@@ -226,8 +221,11 @@  shell_do_install() {
 
             mv ${D}${libdir}/libtinfo.so.* ${D}${base_libdir}
             rm ${D}${libdir}/libtinfo.so
-            # We'll turn this into a relative symlink after do_install returns
-            ln -sf ${D}${base_libdir}/libtinfo.so.5 ${D}${libdir}/libtinfo.so
+
+            # Use lnr to ensure this is a relative link despite absolute paths
+            # (as we can't know the relationship between base_libdir and libdir).
+            # At some point we can rely on coreutils 8.16 which has ln -r.
+            lnr ${D}${base_libdir}/libtinfo.so.5 ${D}${libdir}/libtinfo.so
         fi
 
         oe_multilib_header curses.h