summaryrefslogtreecommitdiffstats
path: root/package/block-extroot
diff options
context:
space:
mode:
authorDaniel Dickinson <crazycshore@gmail.com>2010-09-23 13:58:05 +0000
committerDaniel Dickinson <crazycshore@gmail.com>2010-09-23 13:58:05 +0000
commit18b473ca9b3a1d050285af6c5d1640fafc5e0ecd (patch)
tree3a7e67349a8a9e5ad2cf07ef8aa837b6062fb909 /package/block-extroot
parent19723d09c279f2dad7546ae56a5d081984e3d229 (diff)
downloadmaster-31e0f0ae-18b473ca9b3a1d050285af6c5d1640fafc5e0ecd.tar.gz
master-31e0f0ae-18b473ca9b3a1d050285af6c5d1640fafc5e0ecd.tar.bz2
master-31e0f0ae-18b473ca9b3a1d050285af6c5d1640fafc5e0ecd.zip
base/block-extroot, base/block-mount: Modified preinit and block-extroot and block-mount so that use of block-mount and block-extroot do not require that block-extroot, block-mount, nor the kernel modules they depend, on are required to included in the image. That is block-extroot and dependencies may now be installed as modules onto the jffs2 part of a squashfs system and it will work. In addition packages which are installed into the jffs2 of a squashfs system may now affect preinit, so long as they do not require execution of commands that occur before the merging of the jffs2 and built-in (squashfs) preinit scripts is done.
Thanks jow for the preinit merge stuff! SVN-Revision: 23110
Diffstat (limited to 'package/block-extroot')
-rw-r--r--package/block-extroot/files/50_determine_usb_root5
-rw-r--r--package/block-extroot/files/extmount.sh14
2 files changed, 10 insertions, 9 deletions
diff --git a/package/block-extroot/files/50_determine_usb_root b/package/block-extroot/files/50_determine_usb_root
index 98ec0016e2..b899203e5d 100644
--- a/package/block-extroot/files/50_determine_usb_root
+++ b/package/block-extroot/files/50_determine_usb_root
@@ -5,9 +5,8 @@
determine_external_root() {
- . /etc/functions.sh
- . /lib/functions/extmount.sh
- . /lib/functions/mount.sh
+ pi_include /lib/functions/extmount.sh
+ pi_include /lib/functions/mount.sh
local OLD_UCI_CONFIG_DIR="$UCI_CONFIG_DIR"
set_jffs_mp
diff --git a/package/block-extroot/files/extmount.sh b/package/block-extroot/files/extmount.sh
index dfd6eef073..f696324f71 100644
--- a/package/block-extroot/files/extmount.sh
+++ b/package/block-extroot/files/extmount.sh
@@ -13,12 +13,14 @@ set_jffs_mp() {
}
er_load_modules() {
- [ -d $ER_ROOT/etc/modules.d ] && {
- cd $ER_ROOT/etc/modules.d && {
- local modules="$(grep -l '# May be required for rootfs' *)"
- cat $modules | sed 's/^\([^#]\)/insmod \1/' | sh 2>&- || :
- }
+ mkdir -p /tmp/extroot_modules/modules.d
+ mkdir -p /tmp/extroot_modules/modules
+ ln -sf /etc/modules.d/* /tmp/overlay/etc/modules.d/* /tmp/extroot_modules/modules.d
+ ln -sf /lib/modules/*/* /tmp/overlay/lib/modules/*/* /tmp/extroot_modules/modules
+ local modules="$(grep -l '# May be required for rootfs' /tmp/extroot_modules/modules.d/*)"
+ cd /tmp/extroot_modules/modules && {
+ cat $modules | sed -e 's/^\([^#].*\)/insmod \.\/\1.ko/'| sh 2>&- || :
}
+ rm -rf /tmp/extroot_modules
}
-