summaryrefslogtreecommitdiffstats
path: root/package/block-extroot
diff options
context:
space:
mode:
authorcshore <cshore@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-23 13:58:05 +0000
committercshore <cshore@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-23 13:58:05 +0000
commit848953efdfd9623fbc65a4cd11ab51ea46c3cdc0 (patch)
treeac8c2aadbe645dd51e97ca474cb1ea5b86257ab6 /package/block-extroot
parentebf957be0086060f305acfbe4e633096b604ef65 (diff)
[package] 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! git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23110 3c298f89-4303-0410-b956-a3cf2f4a3e73
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 98ec0016e..b899203e5 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 dfd6eef07..f696324f7 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
}
-