[oe] [PATCH] rootfs_ipk.bbclass: run preinst/postinst scripts with "-e"
Roman I Khimov
khimov at altell.ru
Fri Apr 9 11:19:53 UTC 2010
There are scripts that can and should work when being ran on build
host (for example, simple update-rc.d), but there are also many which
can't and won't ever (for example, anything adding users/groups).
The second group sometimes doesn't get "unpacked" flag because
scripts throw errors in the middle and return something nice from
the last command.
It can be considered as a bug in pre/postinst script (as it should
either explicitly check for "${D}" or just do "set -e" at start),
but it is common enough.
There is also another aspect to this as in general we can't be sure
that everything is OK wrt preinst/postinst if script commands throw
errors.
Running preinst/postinst scripts on host with "-e" should solve
that.
Signed-off-by: Roman I Khimov <khimov at altell.ru>
---
classes/rootfs_ipk.bbclass | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/classes/rootfs_ipk.bbclass b/classes/rootfs_ipk.bbclass
index 3a73ed8..5483c7e 100644
--- a/classes/rootfs_ipk.bbclass
+++ b/classes/rootfs_ipk.bbclass
@@ -70,12 +70,12 @@ fakeroot rootfs_ipk_do_rootfs () {
fi
for i in ${IMAGE_ROOTFS}${libdir}/opkg/info/*.preinst; do
- if [ -f $i ] && ! sh $i; then
+ if [ -f $i ] && ! sh -e $i; then
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst`
fi
done
for i in ${IMAGE_ROOTFS}${libdir}/opkg/info/*.postinst; do
- if [ -f $i ] && ! sh $i configure; then
+ if [ -f $i ] && ! sh -e $i configure; then
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst`
fi
done
--
1.5.6.5
More information about the Openembedded-devel
mailing list