aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xmeta/recipes-core/initrdscripts/initramfs-framework/finish5
-rwxr-xr-xmeta/recipes-core/initrdscripts/initramfs-framework/init13
2 files changed, 10 insertions, 8 deletions
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/finish b/meta/recipes-core/initrdscripts/initramfs-framework/finish
index bedd803f108..325f47be409 100755
--- a/meta/recipes-core/initrdscripts/initramfs-framework/finish
+++ b/meta/recipes-core/initrdscripts/initramfs-framework/finish
@@ -16,8 +16,9 @@ finish_run() {
if [ -n "$bootparam_root" ]; then
debug "No e2fs compatible filesystem has been mounted, mounting $bootparam_root..."
- if [ "${bootparam_root:0:5}" = "UUID=" ]; then
- bootparam_root="/dev/disk/by-uuid/${bootparam_root/UUID=/}"
+ if [ "`echo ${bootparam_root} | cut -c1-5`" = "UUID=" ]; then
+ root_uuid=`echo $bootparam_root | cut -c6-`
+ bootparam_root="/dev/disk/by-uuid/$root_uuid"
fi
if [ -e "$bootparam_root" ]; then
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/init b/meta/recipes-core/initrdscripts/initramfs-framework/init
index 0be8f4dafd7..20774aa5e9b 100755
--- a/meta/recipes-core/initrdscripts/initramfs-framework/init
+++ b/meta/recipes-core/initrdscripts/initramfs-framework/init
@@ -78,12 +78,13 @@ mount -t sysfs sysfs /sys
# populate bootparam environment
for p in `cat /proc/cmdline`; do
- opt="${p%%=*}"
- opt=${opt/-/_}
- if [ "${p/=/}" = "$p" ]; then
+ opt=`echo $p | cut -d'=' -f1`
+ opt=`echo $opt | sed -e 's/-/_/'`
+ if [ "`echo $p | cut -d'=' -f1`" = "$p" ]; then
eval "bootparam_${opt}=true"
else
- eval "bootparam_${opt}=\"${p#*=}\""
+ value="`echo $p | cut -d'=' -f2-`"
+ eval "bootparam_${opt}=\"${value}\""
fi
done
@@ -102,7 +103,7 @@ mkdir $ROOTFS_DIR
# Load and run modules
for m in $MODULES_DIR/*; do
# Skip backup files
- if [ "${m/\~/}" != "$m" ]; then
+ if [ "`echo $m | sed -e 's/\~$//'`" = "$m" ]; then
continue
fi
@@ -117,7 +118,7 @@ for m in $MODULES_DIR/*; do
done
# process module
- source $m
+ . $m
if ! eval "${module}_enabled"; then
debug "Skipping module $module"