package_rpm.bbclass: handle pre/post remove scriptlets
authorLaurentiu Palcu <laurentiu.palcu@intel.com>
Wed, 5 Jun 2013 09:16:50 +0000 (12:16 +0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 11 Jun 2013 14:38:05 +0000 (15:38 +0100)
Currently the scriptlet_wrapper is designed to handle only pre/post
install scriptlets. This patch will slightly change the wrapper script
to handle also pre/post remove scriptlets when we want to remove
packages from the final image.

(From OE-Core rev: aea47c77d69407b2e62f151cabba35293d179f0c)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/package_rpm.bbclass

index 648327f..c654cdb 100644 (file)
@@ -382,12 +382,16 @@ export NATIVE_ROOT=${STAGING_DIR_NATIVE}
 
 \$2 \$1/\$3 \$4
 if [ \$? -ne 0 ]; then
-  mkdir -p \$1/etc/rpm-postinsts
-  name=\`head -1 \$1/\$3 | cut -d' ' -f 2\`
-  echo "#!\$2" > \$1/etc/rpm-postinsts/\${name}
-  echo "# Arg: \$4" >> \$1/etc/rpm-postinsts/\${name}
-  cat \$1/\$3 >> \$1/etc/rpm-postinsts/\${name}
-  chmod +x \$1/etc/rpm-postinsts/\${name}
+  if [ \$4 -eq 1 ]; then
+    mkdir -p \$1/etc/rpm-postinsts
+    name=\`head -1 \$1/\$3 | cut -d' ' -f 2\`
+    echo "#!\$2" > \$1/etc/rpm-postinsts/\${name}
+    echo "# Arg: \$4" >> \$1/etc/rpm-postinsts/\${name}
+    cat \$1/\$3 >> \$1/etc/rpm-postinsts/\${name}
+    chmod +x \$1/etc/rpm-postinsts/\${name}
+  else
+    echo "Error: pre/post remove scriptlet failed"
+  fi
 fi
 EOF