[gnome-continuous-yocto/gnomeostree-3.28-rocko: 3401/8267] rpm: fix multilib macro installation



commit 43a135b0c8f9f9ab2f48f739ab134390e862c0cc
Author: Chen Qi <Qi Chen windriver com>
Date:   Tue Nov 15 14:31:06 2016 +0800

    rpm: fix multilib macro installation
    
    For now, the rpm macro for multilib is not installed correctly. For
    example, in x86-64 lib32 situation, the macro is installed under
    tmp/work/x86-pokymllib32-linux/rpm/5.4.16-r0/image/usr/lib/rpm/poky/i686-linux/.
    
    The directory is even not under WORKDIR. And it will of course not be
    packaged.
    
    We need to save necessary values before updating the localdata and restore
    them so that the macros could be installed into the correct directory.
    
    (From OE-Core rev: 40e92de46489bdab0af48fedc46c0d153355f15c)
    
    Signed-off-by: Chen Qi <Qi Chen windriver com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/recipes-devtools/rpm/rpm_5.4.16.bb |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.16.bb b/meta/recipes-devtools/rpm/rpm_5.4.16.bb
index 85eb5fe..182818e 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.16.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.16.bb
@@ -626,8 +626,9 @@ def multilib_rpmmacros(d):
     localdata.delVar('TOOLCHAIN_OPTIONS')
 
     # Set 'localdata' values to be consistent with 'd' values.
-    localdata.setVar('distromacrodir', d.getVar('distromacrodir', True))
-    localdata.setVar('WORKDIR', d.getVar('WORKDIR', True))
+    distromacrodirVal = d.getVar('distromacrodir', True)
+    workdirVal = d.getVar('WORKDIR', True)
+    dval = d.getVar('D', True)
 
     ret = gen_arch_macro(localdata)
 
@@ -639,6 +640,9 @@ def multilib_rpmmacros(d):
         localdata.setVar("OVERRIDES", overrides)
         localdata.setVar("MLPREFIX", item + "-")
         bb.data.update_data(localdata)
+        localdata.setVar('WORKDIR', workdirVal)
+        localdata.setVar('distromacrodir', distromacrodirVal)
+        localdata.setVar('D', dval)
         ret += gen_arch_macro(localdata)
     return ret
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]