Skip to contentSkip to conversation

rpm: fix multilib macro installation

PATCH New Chen Qi 1 participant 2 messages Nov 15, 2016

lore
Share & tools
lore

Chen Qi

author
#0 lore raw

cover rpm: fix multilib macro installation

The following changes since commit 9303d8055c45a0f6af295d70a6f6a8b9d8d8a7c9:

devtool: add "rename" subcommand (2016-11-07 11:04:17 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib ChenQi/rpm-macros
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=ChenQi/rpm-macros

Chen Qi (1):
rpm: fix multilib macro installation

 meta/recipes-devtools/rpm/rpm_5.4.16.bb | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH 1/1 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.

---
 meta/recipes-devtools/rpm/rpm_5.4.16.bb | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
meta/recipes-devtools/rpm/rpm_5.4.16.bb +6 -2
index 85eb5fe..182818e 100644
@@ -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
 
Signature · 1 line
1.9.1