[2/2] multilib_script: use MLPREFIX instead of libdir when renaming

Submitted by Ross Burton on July 2, 2019, 3:22 p.m. | Patch ID: 162741

Details

Message ID 20190702152248.13678-2-ross.burton@intel.com
State Master Next
Commit e79eb82d3638124017ffc6df6ab1a1e923d3457e
Headers show

Commit Message

Ross Burton July 2, 2019, 3:22 p.m.
Instead of using part of ${base_libdir} to rename scripts, use MLPREFIX.  This
is more obvious as MLPREFIX is a common prefix in package names, and as these
filenames are hidden behind alternatives they're rarely used directly.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/classes/multilib_script.bbclass | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

Patch hide | download patch | download mbox

diff --git a/meta/classes/multilib_script.bbclass b/meta/classes/multilib_script.bbclass
index b11efc1ec5c..de95dc6551d 100644
--- a/meta/classes/multilib_script.bbclass
+++ b/meta/classes/multilib_script.bbclass
@@ -6,8 +6,6 @@ 
 
 inherit update-alternatives
 
-MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}"
-
 PACKAGE_PREPROCESS_FUNCS += "multilibscript_rename"
 
 multilibscript_rename() {
@@ -26,9 +24,10 @@  python () {
         pkg, script = entry.split(":")
         epkg = d.expand(pkg)
         scriptname = os.path.basename(script)
+        mlname = os.path.join(os.path.dirname(script), "${MLPREFIX}" + scriptname)
         d.appendVar("ALTERNATIVE_" + epkg, " " + scriptname + " ")
         d.setVarFlag("ALTERNATIVE_LINK_NAME", scriptname, script)
-        d.setVarFlag("ALTERNATIVE_TARGET", scriptname, script + "-${MULTILIB_SUFFIX}")
-        d.appendVar("multilibscript_rename",  "\n	mv ${PKGD}" + script + " ${PKGD}" + script + "-${MULTILIB_SUFFIX}")
-        d.appendVar("FILES_" + epkg, " " + script + "-${MULTILIB_SUFFIX}")
+        d.setVarFlag("ALTERNATIVE_TARGET", scriptname, mlname)
+        d.appendVar("FILES_" + epkg, " " + mlname)
+        d.appendVar("multilibscript_rename",  "\n	mv ${PKGD}" + script + " ${PKGD}" + mlname)
 }

Comments

Richard Purdie July 3, 2019, 8:08 a.m.
On Tue, 2019-07-02 at 16:22 +0100, Ross Burton wrote:
> Instead of using part of ${base_libdir} to rename scripts, use
> MLPREFIX.  This
> is more obvious as MLPREFIX is a common prefix in package names, and
> as these
> filenames are hidden behind alternatives they're rarely used
> directly.
> 
> Signed-off-by: Ross Burton <ross.burton@intel.com>
> ---
>  meta/classes/multilib_script.bbclass | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)

This appears to have some issues:

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/794

Cheers,

Richard
Ross Burton July 3, 2019, 8:13 a.m.
Yeah discovered that late last night here too.  V2 finalising now.

Ross

On Wed, 3 Jul 2019 at 09:08, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Tue, 2019-07-02 at 16:22 +0100, Ross Burton wrote:
> > Instead of using part of ${base_libdir} to rename scripts, use
> > MLPREFIX.  This
> > is more obvious as MLPREFIX is a common prefix in package names, and
> > as these
> > filenames are hidden behind alternatives they're rarely used
> > directly.
> >
> > Signed-off-by: Ross Burton <ross.burton@intel.com>
> > ---
> >  meta/classes/multilib_script.bbclass | 9 ++++-----
> >  1 file changed, 4 insertions(+), 5 deletions(-)
>
> This appears to have some issues:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/794
>
> Cheers,
>
> Richard
>