summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/rpm
diff options
context:
space:
mode:
authorKang Kai <kai.kang@windriver.com>2013-02-25 11:06:51 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-03-07 11:12:06 +0000
commit94a58c153958002b117fcb5eeaef3d22be71a0f6 (patch)
treeb6c2489d4a7e484674a488153226abd00ae94265 /meta/recipes-devtools/rpm
parent684b94317f5b78f6c9c993f84438f8fa7e59fd5a (diff)
downloadopenembedded-core-94a58c153958002b117fcb5eeaef3d22be71a0f6.tar.gz
openembedded-core-94a58c153958002b117fcb5eeaef3d22be71a0f6.tar.bz2
openembedded-core-94a58c153958002b117fcb5eeaef3d22be71a0f6.zip
rpm: save output of postinstall scripts when image first boot
When image feature "debug-tweaks" is enabled, save output of post install script to log file which can be configured when image first boot. [YOCTO #3223] Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-devtools/rpm')
-rw-r--r--meta/recipes-devtools/rpm/rpm_5.4.9.bb6
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.9.bb b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
index 0b014b61c5..cdfb5ff4bc 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.9.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
@@ -223,6 +223,7 @@ FILES_${PN} = "${bindir}/rpm \
${libdir}/rpm/bin/wget \
/var/lib/rpm \
/var/cache/rpm \
+ ${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts \
"
FILES_${PN}-dbg += "${libdir}/rpm/.debug \
@@ -374,6 +375,9 @@ do_configure() {
#
POSTINSTALL_INITPOSITION ?= "98"
+POSTLOG ?= "/var/log/postinstall.log"
+REDIRECT_CMD = "${@base_contains('IMAGE_FEATURES', 'debug-tweaks', '>>${POSTLOG} 2>&1', '', d)}"
+
do_install_append() {
sed -i -e 's,%__check_files,#%%__check_files,' ${D}/${libdir}/rpm/macros
sed -i -e 's,%__scriptlet_requires,#%%__scriptlet_requires,' ${D}/${libdir}/rpm/macros
@@ -459,7 +463,7 @@ do_install_append() {
for i in \`ls /etc/rpm-postinsts/\`; do
i=/etc/rpm-postinsts/$i
echo "Running postinst $i..."
- if [ -f $i ] && $i; then
+ if [ -f $i ] && $i ${REDIRECT_CMD}; then
rm $i
else
echo "ERROR: postinst $i failed."