aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2016-11-15 11:01:44 +0800
committerChen Qi <Qi.Chen@windriver.com>2016-11-15 14:11:36 +0800
commit77d67e1026284cb6061e1e3e785b4d30b6b0192c (patch)
tree281c6406c43b32af8bac7733f6f3b427eb3d15ef
parent9303d8055c45a0f6af295d70a6f6a8b9d8d8a7c9 (diff)
downloadopenembedded-core-contrib-ChenQi/rpm-macros.tar.gz
openembedded-core-contrib-ChenQi/rpm-macros.tar.bz2
openembedded-core-contrib-ChenQi/rpm-macros.zip
rpm: fix multilib macro installationChenQi/rpm-macros
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. Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-rw-r--r--meta/recipes-devtools/rpm/rpm_5.4.16.bb8
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 85eb5fef1e..182818ee09 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