[oe-commits] Jean-Benoit MARTIN : package_manager: RpmPM: Fix scriptlet for rpm 4

git at git.openembedded.org git at git.openembedded.org
Sat Apr 11 22:34:07 UTC 2015


Module: openembedded-core.git
Branch: master-next
Commit: ed7c33e618895b5869579358aeac7f59ab52f293
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=ed7c33e618895b5869579358aeac7f59ab52f293

Author: Jean-Benoit MARTIN <jean-benoit.martin at open.eurogiciel.org>
Date:   Fri Apr 10 15:15:29 2015 +0200

package_manager: RpmPM: Fix scriptlet for rpm 4

Path of rpm post install script is different between rpm 4 and 5

Signed-off-by: Jean-Benoit MARTIN <jean-benoit.martin at open.eurogiciel.org>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/lib/oe/package_manager.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index ed0c9a7..0460415 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -937,8 +937,10 @@ class RpmPM(PackageManager):
         #
         if self.rpm_version == 4:
             scriptletcmd = "$2 $3 $4\n"
+            scriptpath = "$3"
         else:
             scriptletcmd = "$2 $1/$3 $4\n"
+            scriptpath = "$1/$3"
 
         SCRIPTLET_FORMAT = "#!/bin/bash\n" \
             "\n" \
@@ -956,10 +958,10 @@ class RpmPM(PackageManager):
             "    mkdir -p $1/etc/rpm-postinsts\n" \
             "    num=100\n" \
             "    while [ -e $1/etc/rpm-postinsts/${num}-* ]; do num=$((num + 1)); done\n" \
-            "    name=`head -1 $1/$3 | cut -d\' \' -f 2`\n" \
+            "    name=`head -1 " + scriptpath + " | cut -d\' \' -f 2`\n" \
             '    echo "#!$2" > $1/etc/rpm-postinsts/${num}-${name}\n' \
             '    echo "# Arg: $4" >> $1/etc/rpm-postinsts/${num}-${name}\n' \
-            "    cat $1/$3 >> $1/etc/rpm-postinsts/${num}-${name}\n" \
+            "    cat " + scriptpath + " >> $1/etc/rpm-postinsts/${num}-${name}\n" \
             "    chmod +x $1/etc/rpm-postinsts/${num}-${name}\n" \
             "  else\n" \
             '    echo "Error: pre/post remove scriptlet failed"\n' \



More information about the Openembedded-commits mailing list