diff options
-rw-r--r-- | meta/classes/rootfs_ipk.bbclass | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass index 5727d1502b..edd84fb40d 100644 --- a/meta/classes/rootfs_ipk.bbclass +++ b/meta/classes/rootfs_ipk.bbclass | |||
@@ -54,17 +54,27 @@ fakeroot rootfs_ipk_do_rootfs () { | |||
54 | ${OPKG_POSTPROCESS_COMMANDS} | 54 | ${OPKG_POSTPROCESS_COMMANDS} |
55 | ${ROOTFS_POSTINSTALL_COMMAND} | 55 | ${ROOTFS_POSTINSTALL_COMMAND} |
56 | 56 | ||
57 | runtime_script_required=0 | ||
57 | for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.preinst; do | 58 | for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.preinst; do |
58 | if [ -f $i ] && ! sh $i; then | 59 | if [ -f $i ] && ! sh $i; then |
60 | runtime_script_required=1 | ||
59 | opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst` | 61 | opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst` |
60 | fi | 62 | fi |
61 | done | 63 | done |
62 | for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.postinst; do | 64 | for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.postinst; do |
63 | if [ -f $i ] && ! sh $i configure; then | 65 | if [ -f $i ] && ! sh $i configure; then |
66 | runtime_script_required=1 | ||
64 | opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst` | 67 | opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst` |
65 | fi | 68 | fi |
66 | done | 69 | done |
67 | 70 | ||
71 | if ${@base_contains("IMAGE_FEATURES", "read-only-rootfs", "true", "false" ,d)}; then | ||
72 | if [ $runtime_script_required -eq 1 ]; then | ||
73 | echo "Some packages could not be configured offline and rootfs is read-only." | ||
74 | exit 1 | ||
75 | fi | ||
76 | fi | ||
77 | |||
68 | install -d ${IMAGE_ROOTFS}/${sysconfdir} | 78 | install -d ${IMAGE_ROOTFS}/${sysconfdir} |
69 | echo ${BUILDNAME} > ${IMAGE_ROOTFS}/${sysconfdir}/version | 79 | echo ${BUILDNAME} > ${IMAGE_ROOTFS}/${sysconfdir}/version |
70 | 80 | ||