summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <richard@openedhand.com>2007-09-02 14:00:52 +0000
committerRichard Purdie <richard@openedhand.com>2007-09-02 14:00:52 +0000
commit1cf731b1e3bb125449c2ef4e1194b6bf69e7b667 (patch)
treefc305d382d225d9a033fb1678bdc4720f38484e4
parent3cb6c768efa690f25035351fb7975bca59f94ee2 (diff)
downloadopenembedded-core-1cf731b1e3bb125449c2ef4e1194b6bf69e7b667.tar.gz
openembedded-core-1cf731b1e3bb125449c2ef4e1194b6bf69e7b667.tar.bz2
openembedded-core-1cf731b1e3bb125449c2ef4e1194b6bf69e7b667.zip
initscripts: Sync with OE, primarily for better /etc/timestamp handling
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2650 311d38ba-8fff-0310-9ca6-ca027cbcb966
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/bootmisc.sh15
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/devices3
-rw-r--r--meta/packages/initscripts/initscripts-1.0/functions17
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/halt6
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/jornada6xx/checkroot.sh211
-rw-r--r--meta/packages/initscripts/initscripts-1.0/jornada6xx/devices7
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/jornada7xx/checkroot.sh211
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/jornada7xx/devices81
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/openzaurus/checkversion31
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/ramdisk3
-rwxr-xr-xmeta/packages/initscripts/initscripts-1.0/reboot6
-rw-r--r--meta/packages/initscripts/initscripts-1.0/save-rtc.sh17
-rw-r--r--meta/packages/initscripts/initscripts_1.0.bb57
13 files changed, 539 insertions, 126 deletions
diff --git a/meta/packages/initscripts/initscripts-1.0/bootmisc.sh b/meta/packages/initscripts/initscripts-1.0/bootmisc.sh
index 814dba676c..2a40e0c410 100755
--- a/meta/packages/initscripts/initscripts-1.0/bootmisc.sh
+++ b/meta/packages/initscripts/initscripts-1.0/bootmisc.sh
@@ -61,11 +61,18 @@ fi
#
/sbin/ldconfig
-#
-# Recover the time, if there is a time file
-#
+# Set the system clock from hardware clock
+# If the timestamp is 1 day or more recent than the current time,
+# use the timestamp instead.
+/etc/init.d/hwclock.sh start
if test -e /etc/timestamp
then
- date -s `cat /etc/timestamp`
+ SYSTEMDATE=`date "+%Y%m%d"`
+ TIMESTAMP=`cat /etc/timestamp | awk '{ print substr($0,9,4) substr($0,1,4);}'`
+ NEEDUPDATE=`expr \( $TIMESTAMP \> $SYSTEMDATE \)`
+ if [ $NEEDUPDATE -eq 1 ]; then
+ date `cat /etc/timestamp`
+ /etc/init.d/hwclock.sh stop
+ fi
fi
: exit 0
diff --git a/meta/packages/initscripts/initscripts-1.0/devices b/meta/packages/initscripts/initscripts-1.0/devices
index 28fb71fe3f..67a2ec8092 100755
--- a/meta/packages/initscripts/initscripts-1.0/devices
+++ b/meta/packages/initscripts/initscripts-1.0/devices
@@ -6,7 +6,7 @@
. /etc/default/rcS
# exit without doing anything if udev is active
-if test -e /dev/.udevdb; then
+if test -e /dev/.udev -o -e /dev/.udevdb; then
exit 0
fi
@@ -50,6 +50,7 @@ else
mkdir -p dev/msys
mkdir -p dev/pts
mkdir -p dev/vc
+ mkdir -p dev/snd
for i in 0 1 2 3 4 5 6 7 8 9; do
ln -s /dev/tty$i /dev/vc/$i
done
diff --git a/meta/packages/initscripts/initscripts-1.0/functions b/meta/packages/initscripts/initscripts-1.0/functions
new file mode 100644
index 0000000000..358fc6edb3
--- /dev/null
+++ b/meta/packages/initscripts/initscripts-1.0/functions
@@ -0,0 +1,17 @@
+# -*-Shell-script-*-
+#
+# functions This file contains functions to be used by most or all
+# shell scripts in the /etc/init.d directory.
+#
+
+cpuinfo_id() { # return the Hardware module ID
+ awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo
+}
+
+killproc() { # kill the named process(es)
+ pid=`/bin/ps -e x |
+ /bin/grep $1 |
+ /bin/grep -v grep |
+ /bin/sed -e 's/^ *//' -e 's/ .*//'`
+ [ "$pid" != "" ] && kill $pid
+}
diff --git a/meta/packages/initscripts/initscripts-1.0/halt b/meta/packages/initscripts/initscripts-1.0/halt
index aa1769606a..d8cab222ca 100755
--- a/meta/packages/initscripts/initscripts-1.0/halt
+++ b/meta/packages/initscripts/initscripts-1.0/halt
@@ -7,12 +7,6 @@
PATH=/sbin:/bin:/usr/sbin:/usr/bin
-# Update the timestamp, if there is already one
-if test -e /etc/timestamp
-then
- date +%2m%2d%2H%2M%Y > /etc/timestamp
-fi
-
# See if we need to cut the power.
if test -x /etc/init.d/ups-monitor
then
diff --git a/meta/packages/initscripts/initscripts-1.0/jornada6xx/checkroot.sh b/meta/packages/initscripts/initscripts-1.0/jornada6xx/checkroot.sh
new file mode 100755
index 0000000000..9e2d3cfc85
--- /dev/null
+++ b/meta/packages/initscripts/initscripts-1.0/jornada6xx/checkroot.sh
@@ -0,0 +1,211 @@
+#
+# checkroot.sh Check to root filesystem.
+#
+# Version: @(#)checkroot.sh 2.84 25-Jan-2002 miquels@cistron.nl
+#
+
+. /etc/default/rcS
+
+#
+# Set SULOGIN in /etc/default/rcS to yes if you want a sulogin to be spawned
+# from this script *before anything else* with a timeout, like SCO does.
+#
+test "$SULOGIN" = yes && sulogin -t 30 $CONSOLE
+
+#
+# Ensure that bdflush (update) is running before any major I/O is
+# performed (the following fsck is a good example of such activity :).
+#
+test -x /sbin/update && update
+
+#
+# Read /etc/fstab.
+#
+exec 9>&0 </etc/fstab
+rootmode=rw
+rootopts=rw
+test "$ENABLE_ROOTFS_FSCK" = yes && rootcheck="yes" || rootcheck="no"
+swap_on_md=no
+devfs=
+while read fs mnt type opts dump pass junk
+do
+ case "$fs" in
+ ""|\#*)
+ continue;
+ ;;
+ /dev/md*)
+ # Swap on md device.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ /dev/*)
+ ;;
+ *)
+ # Might be a swapfile.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ esac
+
+ test "$type" = devfs && devfs="$fs"
+
+ # Currently we do not care about the other entries
+ if test "$mnt" = "/"
+ then
+ #echo "[$fs] [$mnt] [$type] [$opts] [$dump] [$pass] [$junk]"
+
+ rootopts="$opts"
+ roottype="$type"
+
+ #The "spinner" is broken on busybox sh
+ TERM=dumb
+
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+
+ # Enable fsck for ext2 and ext3 rootfs, disable for everything else
+ case "$type" in
+ ext3) rootcheck=yes;;
+ *) rootcheck=no;;
+ esac
+
+ if test "$rootcheck" = yes
+ then
+ if ! test -x "/sbin/fsck.${roottype}"
+ then
+ echo -e "\n * * * WARNING: /sbin/fsck.${roottype} is missing! * * *\n"
+ rootcheck=no
+ fi
+ fi
+
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+ fi
+done
+exec 0>&9 9>&-
+
+#
+# Activate the swap device(s) in /etc/fstab. This needs to be done
+# before fsck, since fsck can be quite memory-hungry.
+#
+doswap=no
+test -d /proc/1 || mount -n /proc
+case "`uname -r`" in
+ 2.[0123].*)
+ if test $swap_on_md = yes && grep -qs resync /proc/mdstat
+ then
+ test "$VERBOSE" != no && echo "Not activating swap - RAID array resyncing"
+ else
+ doswap=yes
+ fi
+ ;;
+ *)
+ doswap=yes
+ ;;
+esac
+if test $doswap = yes
+then
+ test "$VERBOSE" != no && echo "Activating swap"
+ swapon -a 2> /dev/null
+fi
+
+#
+# Check the root filesystem.
+#
+if test -f /fastboot || test $rootcheck = no
+then
+ test $rootcheck = yes && echo "Fast boot, no filesystem check"
+else
+ #
+ # Ensure that root is quiescent and read-only before fsck'ing.
+ #
+ mount -n -o remount,ro /
+ if test $? = 0
+ then
+ if test -f /forcefsck
+ then
+ force="-f"
+ else
+ force=""
+ fi
+ if test "$FSCKFIX" = yes
+ then
+ fix="-y"
+ else
+ fix="-a"
+ fi
+ spinner="-C"
+ case "$TERM" in
+ dumb|network|unknown|"") spinner="" ;;
+ esac
+ test `uname -m` = s390 && spinner="" # This should go away
+ test "$VERBOSE" != no && echo "Checking root filesystem..."
+ fsck $spinner $force $fix /
+ #
+ # If there was a failure, drop into single-user mode.
+ #
+ # NOTE: "failure" is defined as exiting with a return code of
+ # 2 or larger. A return code of 1 indicates that filesystem
+ # errors were corrected but that the boot may proceed.
+ #
+ if test "$?" -gt 1
+ then
+
+ # Since this script is run very early in the boot-process, it should be safe to assume that the
+ # output is printed to VT1. However, some distributions use a bootsplash to hide the "ugly" boot
+ # messages and having the bootsplash "hang" due to a waiting fsck prompt is less than ideal
+ chvt 1
+
+ # Surprise! Re-directing from a HERE document (as in
+ # "cat << EOF") won't work, because the root is read-only.
+ echo
+ echo "fsck failed. Please repair manually and reboot. Please note"
+ echo "that the root filesystem is currently mounted read-only. To"
+ echo "remount it read-write:"
+ echo
+ echo " # mount -n -o remount,rw /"
+ echo
+ echo "CONTROL-D will exit from this shell and REBOOT the system."
+ echo
+ # Start a single user shell on the console
+ /sbin/sulogin $CONSOLE
+ reboot -f
+ fi
+ else
+ echo "*** ERROR! Cannot fsck root fs because it is not mounted read-only!"
+ echo
+ fi
+fi
+
+#
+# If the root filesystem was not marked as read-only in /etc/fstab,
+# remount the rootfs rw but do not try to change mtab because it
+# is on a ro fs until the remount succeeded. Then clean up old mtabs
+# and finally write the new mtab.
+# This part is only needed if the rootfs was mounted ro.
+#
+if [ $(grep rootfs /proc/mounts | awk '{print $4}') = rw ]; then
+ exit 0
+fi
+
+# Add a second check, which seems to be needed for some kernel versions
+if [ $(grep "/dev/root" /proc/mounts | awk '{print $4}') = rw ]; then
+ exit 0
+fi
+
+
+echo "Remounting root file system..."
+mount -n -o remount,$rootmode /
+if test "$rootmode" = rw
+then
+ if test ! -L /etc/mtab
+ then
+ rm -f /etc/mtab~ /etc/nologin
+ : > /etc/mtab
+ fi
+ mount -f -o remount /
+ mount -f /proc
+ test "$devfs" && grep -q '^devfs /dev' /proc/mounts && mount -f "$devfs"
+fi
+
+: exit 0
diff --git a/meta/packages/initscripts/initscripts-1.0/jornada6xx/devices b/meta/packages/initscripts/initscripts-1.0/jornada6xx/devices
index fc96ff62ee..5ca2a1ccef 100644
--- a/meta/packages/initscripts/initscripts-1.0/jornada6xx/devices
+++ b/meta/packages/initscripts/initscripts-1.0/jornada6xx/devices
@@ -22,9 +22,6 @@ then
ln -s /dev/vc/4 /dev/tty4
ln -s /dev/vc/5 /dev/tty5
ln -s /dev/fb/0 /dev/fb0
-# ln -s /dev/tts/0 /dev/ttySA0
-# ln -s /dev/tts/1 /dev/ttySA1
-# ln -s /dev/tts/2 /dev/ttySA2
ln -s /dev/sound/dsp /dev/dsp
ln -s /dev/sound/mixer /dev/mixer
@@ -49,8 +46,12 @@ else
cd /
mkdir -p dev/input
mknod /dev/input/ts0 c 13 128
+ mknod /dev/ttySC0 c 8 204
mknod /dev/ttySC1 c 9 204
+ mknod /dev/ttySC2 c 10 204
+
mknod /dev/irda0 c 10 204
+
mkdir -p dev/msys
mkdir -p dev/pts
mkdir -p dev/vc
diff --git a/meta/packages/initscripts/initscripts-1.0/jornada7xx/checkroot.sh b/meta/packages/initscripts/initscripts-1.0/jornada7xx/checkroot.sh
new file mode 100755
index 0000000000..9e2d3cfc85
--- /dev/null
+++ b/meta/packages/initscripts/initscripts-1.0/jornada7xx/checkroot.sh
@@ -0,0 +1,211 @@
+#
+# checkroot.sh Check to root filesystem.
+#
+# Version: @(#)checkroot.sh 2.84 25-Jan-2002 miquels@cistron.nl
+#
+
+. /etc/default/rcS
+
+#
+# Set SULOGIN in /etc/default/rcS to yes if you want a sulogin to be spawned
+# from this script *before anything else* with a timeout, like SCO does.
+#
+test "$SULOGIN" = yes && sulogin -t 30 $CONSOLE
+
+#
+# Ensure that bdflush (update) is running before any major I/O is
+# performed (the following fsck is a good example of such activity :).
+#
+test -x /sbin/update && update
+
+#
+# Read /etc/fstab.
+#
+exec 9>&0 </etc/fstab
+rootmode=rw
+rootopts=rw
+test "$ENABLE_ROOTFS_FSCK" = yes && rootcheck="yes" || rootcheck="no"
+swap_on_md=no
+devfs=
+while read fs mnt type opts dump pass junk
+do
+ case "$fs" in
+ ""|\#*)
+ continue;
+ ;;
+ /dev/md*)
+ # Swap on md device.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ /dev/*)
+ ;;
+ *)
+ # Might be a swapfile.
+ test "$type" = swap && swap_on_md=yes
+ ;;
+ esac
+
+ test "$type" = devfs && devfs="$fs"
+
+ # Currently we do not care about the other entries
+ if test "$mnt" = "/"
+ then
+ #echo "[$fs] [$mnt] [$type] [$opts] [$dump] [$pass] [$junk]"
+
+ rootopts="$opts"
+ roottype="$type"
+
+ #The "spinner" is broken on busybox sh
+ TERM=dumb
+
+ test "$pass" = 0 -o "$pass" = "" && rootcheck=no
+
+ # Enable fsck for ext2 and ext3 rootfs, disable for everything else
+ case "$type" in
+ ext3) rootcheck=yes;;
+ *) rootcheck=no;;
+ esac
+
+ if test "$rootcheck" = yes
+ then
+ if ! test -x "/sbin/fsck.${roottype}"
+ then
+ echo -e "\n * * * WARNING: /sbin/fsck.${roottype} is missing! * * *\n"
+ rootcheck=no
+ fi
+ fi
+
+ case "$opts" in
+ ro|ro,*|*,ro|*,ro,*)
+ rootmode=ro
+ ;;
+ esac
+ fi
+done
+exec 0>&9 9>&-
+
+#
+# Activate the swap device(s) in /etc/fstab. This needs to be done
+# before fsck, since fsck can be quite memory-hungry.
+#
+doswap=no
+test -d /proc/1 || mount -n /proc
+case "`uname -r`" in
+ 2.[0123].*)
+ if test $swap_on_md = yes && grep -qs resync /proc/mdstat
+ then
+ test "$VERBOSE" != no && echo "Not activating swap - RAID array resyncing"
+ else
+ doswap=yes
+ fi
+ ;;
+ *)
+ doswap=yes
+ ;;
+esac
+if test $doswap = yes
+then
+ test "$VERBOSE" != no && echo "Activating swap"
+ swapon -a 2> /dev/null
+fi
+
+#
+# Check the root filesystem.
+#
+if test -f /fastboot || test $rootcheck = no
+then
+ test $rootcheck = yes && echo "Fast boot, no filesystem check"
+else
+ #
+ # Ensure that root is quiescent and read-only before fsck'ing.
+ #
+ mount -n -o remount,ro /
+ if test $? = 0
+ then
+ if test -f /forcefsck
+ then
+ force="-f"
+ else
+ force=""
+ fi
+ if test "$FSCKFIX" = yes
+ then
+ fix="-y"
+ else
+ fix="-a"
+ fi
+ spinner="-C"
+ case "$TERM" in
+ dumb|network|unknown|"") spinner="" ;;
+ esac
+ test `uname -m` = s390 && spinner="" # This should go away
+ test "$VERBOSE" != no && echo "Checking root filesystem..."
+ fsck $spinner $force $fix /
+ #
+ # If there was a failure, drop into single-user mode.
+ #
+ # NOTE: "failure" is defined as exiting with a return code of
+ # 2 or larger. A return code of 1 indicates that filesystem
+ # errors were corrected but that the boot may proceed.
+ #
+ if test "$?" -gt 1
+ then
+
+ # Since this script is run very early in the boot-process, it should be safe to assume that the
+ # output is printed to VT1. However, some distributions use a bootsplash to hide the "ugly" boot
+ # messages and having the bootsplash "hang" due to a waiting fsck prompt is less than ideal
+ chvt 1
+
+ # Surprise! Re-directing from a HERE document (as in
+ # "cat << EOF") won't work, because the root is read-only.
+ echo
+ echo "fsck failed. Please repair manually and reboot. Please note"
+ echo "that the root filesystem is currently mounted read-only. To"
+ echo "remount it read-write:"
+ echo
+ echo " # mount -n -o remount,rw /"
+ echo
+ echo "CONTROL-D will exit from this shell and REBOOT the system."
+ echo
+ # Start a single user shell on the console
+ /sbin/sulogin $CONSOLE
+ reboot -f
+ fi
+ else
+ echo "*** ERROR! Cannot fsck root fs because it is not mounted read-only!"
+ echo
+ fi
+fi
+
+#
+# If the root filesystem was not marked as read-only in /etc/fstab,
+# remount the rootfs rw but do not try to change mtab because it
+# is on a ro fs until the remount succeeded. Then clean up old mtabs
+# and finally write the new mtab.
+# This part is only needed if the rootfs was mounted ro.
+#
+if [ $(grep rootfs /proc/mounts | awk '{print $4}') = rw ]; then
+ exit 0
+fi
+
+# Add a second check, which seems to be needed for some kernel versions
+if [ $(grep "/dev/root" /proc/mounts | awk '{print $4}') = rw ]; then
+ exit 0
+fi
+
+
+echo "Remounting root file system..."
+mount -n -o remount,$rootmode /
+if test "$rootmode" = rw
+then
+ if test ! -L /etc/mtab
+ then
+ rm -f /etc/mtab~ /etc/nologin
+ : > /etc/mtab
+ fi
+ mount -f -o remount /
+ mount -f /proc
+ test "$devfs" && grep -q '^devfs /dev' /proc/mounts && mount -f "$devfs"
+fi
+
+: exit 0
diff --git a/meta/packages/initscripts/initscripts-1.0/jornada7xx/devices b/meta/packages/initscripts/initscripts-1.0/jornada7xx/devices
index 0e59229225..422336a345 100755
--- a/meta/packages/initscripts/initscripts-1.0/jornada7xx/devices
+++ b/meta/packages/initscripts/initscripts-1.0/jornada7xx/devices
@@ -3,35 +3,68 @@
# Devfs handling script. Since we arent running devfsd due to various reasons
# which I will not lay out here, we need to create some links for compatibility.
+. /etc/default/rcS
+
# exit without doing anything if udev is active
if test -e /dev/.udevdb; then
- exit 0
+ exit 0
fi
- test -n "$VERBOSE" && echo -n "Setting up device links for devfs: "
- (
- ln -s /dev/vc/0 /dev/tty0
- ln -s /dev/vc/1 /dev/tty1
- ln -s /dev/vc/2 /dev/tty2
- ln -s /dev/vc/3 /dev/tty3
- ln -s /dev/vc/4 /dev/tty4
- ln -s /dev/vc/5 /dev/tty5
- ln -s /dev/fb/0 /dev/fb0
- # ln -s /dev/tts/0 /dev/ttySA0
- # ln -s /dev/tts/1 /dev/ttySA1
- # ln -s /dev/tts/2 /dev/ttySA2
-
- ln -s /dev/sound/dsp /dev/dsp
- ln -s /dev/sound/mixer /dev/mixer
+if test -e /dev/.devfsd
+then
+ if test "$VERBOSE" != "no"; then echo -n "Setting up device links for devfs: "; fi
+ ln -s /dev/touchscreen/0 /dev/ts
+ ln -s /dev/touchscreen/0raw /dev/tsraw
+ ln -s /dev/vc/0 /dev/tty0
+ ln -s /dev/vc/1 /dev/tty1
+ ln -s /dev/vc/2 /dev/tty2
+ ln -s /dev/vc/3 /dev/tty3
+ ln -s /dev/vc/4 /dev/tty4
+ ln -s /dev/vc/5 /dev/tty5
+ ln -s /dev/fb/0 /dev/fb0
+# ln -s /dev/tts/0 /dev/ttySA0
+# ln -s /dev/tts/1 /dev/ttySA1
+# ln -s /dev/tts/2 /dev/ttySA2
- ln -s /dev/v4l/video0 /dev/video0
- ln -s /dev/v4l/video0 /dev/video
- ln -s /dev/misc/rtc /dev/rtc
- ln -s /dev/misc/apm_bios /dev/apm_bios
+ ln -s /dev/sound/dsp /dev/dsp
+ ln -s /dev/sound/mixer /dev/mixer
- ## need this so that ppp will autoload the ppp modules
- mknod /dev/ppp c 108 0
- ) > /dev/null 2>&1
+ ln -s /dev/v4l/video0 /dev/video0
+ ln -s /dev/v4l/video0 /dev/video
+ ln -s /dev/misc/rtc /dev/rtc
+ ## need this so that ppp will autoload the ppp modules
+ mknod /dev/ppp c 108 0
+
+ if test "$VERBOSE" != "no"; then echo "done"; fi
+else
+ if test "$VERBOSE" != "no"; then echo -n "Mounting /dev ramdisk: "; fi
+ mount -t ramfs ramfs /dev || mount -t tmpfs ramfs /dev
+ if test $? -ne 0; then
+ if test "$VERBOSE" != "no"; then echo "failed"; fi
+ else
+ if test "$VERBOSE" != "no"; then echo "done"; fi
+ fi
+ if test "$VERBOSE" != "no"; then echo -n "Populating /dev: "; fi
+ cd /
+ mkdir -p dev/input
+ mknod /dev/input/ts0 c 13 65
+ mknod /dev/ttySC1 c 9 204
+ mknod /dev/irda0 c 10 204
+ mkdir -p dev/msys
+ mkdir -p dev/pts
+ mkdir -p dev/vc
+ for i in 0 1 2 3 4 5 6 7 8 9; do
+ ln -s /dev/tty$i /dev/vc/$i
+ done
+ ln -sf /proc/self/fd /dev/fd
+ ln -sf /proc/kcore /dev/core
+ /sbin/makedevs -r / -D /etc/device_table
+ if test $? -ne 0; then
+ if test "$VERBOSE" != "no"; then echo "failed"; fi
+ else
+ if test "$VERBOSE" != "no"; then echo "done"; fi
+ fi
+fi
- test -n "$VERBOSE" && echo "done"
+exit 0
diff --git a/meta/packages/initscripts/initscripts-1.0/openzaurus/checkversion b/meta/packages/initscripts/initscripts-1.0/openzaurus/checkversion
deleted file mode 100755
index 0c8be4fc2d..0000000000
--- a/meta/packages/initscripts/initscripts-1.0/openzaurus/checkversion
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/sh
-
-found=`cat /proc/version | cut -d ' ' -f3`
-echo "$found" | grep -q "snapshot" && exit 0
-
-if [ "VERSION" != "$found" ] ; then
- echo -e >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo -e "\033[31;1m * \033[0mW A R N I N G ! \033[31;1m* \033[0m" >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo -e "\033[31;1m * \033[0mYou are running the wrong kernel! \033[31;1m* \033[0m" >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo >/dev/tty1
- echo -e "You are running '" $found "'" >/dev/tty1
- echo -e "I expect kernel '" VERSION "'" >/dev/tty1
- echo >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo -e "\033[31;1m * \033[0mRunning this combination is unsupported \033[31;1m* \033[0m" >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo >/dev/tty1
- echo "I will sleep for 1 minute now. Use this chance to " >/dev/tty1
- echo "reboot the device and flash the proper kernel now! " >/dev/tty1
- echo -e >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo -e "\033[31;1m * \033[0mW A R N I N G ! \033[31;1m* \033[0m" >/dev/tty1
- echo -e "\033[31;1m ******************************************* \033[0m" >/dev/tty1
- echo >/dev/tty1
- sleep 60
-fi
diff --git a/meta/packages/initscripts/initscripts-1.0/ramdisk b/meta/packages/initscripts/initscripts-1.0/ramdisk
index 03ac9bd05b..4dfe53cf61 100755
--- a/meta/packages/initscripts/initscripts-1.0/ramdisk
+++ b/meta/packages/initscripts/initscripts-1.0/ramdisk
@@ -22,6 +22,9 @@ else
RAM_MTDBLK=/dev/mtdblock$RAM_MTD_NO
fi
+if grep -q $RAM_MTDBLK /etc/mtab; then echo "Device $RAM_MTDBLK already mounted"; exit 0; fi
+if test ! -e $RAM_MTD; then echo >&2 "Mtdram device $RAM_MTD does not exist!"; exit 1; fi
+
RAM_MNTPT=/mnt/ram
RAM_MTD_SIZE_HEX=`cat /proc/mtd | grep mtdram | tail -n 1 | cut -d" " -f 2`
RAM_MTD_SIZE=`dc 0x$RAM_MTD_SIZE_HEX 1024 / p`
diff --git a/meta/packages/initscripts/initscripts-1.0/reboot b/meta/packages/initscripts/initscripts-1.0/reboot
index 7f95255bd9..56278199be 100755
--- a/meta/packages/initscripts/initscripts-1.0/reboot
+++ b/meta/packages/initscripts/initscripts-1.0/reboot
@@ -7,11 +7,5 @@
PATH=/sbin:/bin:/usr/sbin:/usr/bin
-# Update the timestamp, if there is one
-if test -e /etc/timestamp
-then
- date +%2m%2d%2H%2M%Y > /etc/timestamp
-fi
-
echo -n "Rebooting... "
reboot -d -f -i
diff --git a/meta/packages/initscripts/initscripts-1.0/save-rtc.sh b/meta/packages/initscripts/initscripts-1.0/save-rtc.sh
index d06aa6d569..e786073051 100644
--- a/meta/packages/initscripts/initscripts-1.0/save-rtc.sh
+++ b/meta/packages/initscripts/initscripts-1.0/save-rtc.sh
@@ -1,16 +1,5 @@
#! /bin/sh
-#
-# Copyright Matthias Hentges <devel@hentges.net> (c) 2006
-# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
-#
-# Filename: save-rtc.sh
-# Date: 03-Jul-06
+/etc/init.d/hwclock.sh stop
-
-# Update the timestamp, if there is already one
-if test -e /etc/timestamp
-then
- echo "Will restore RCT from /etc/timestamp on next boot"
- echo "Delete that file to disable this feature."
- date +%2m%2d%2H%2M%Y > /etc/timestamp
-fi
+# Update the timestamp
+date +%2m%2d%2H%2M%Y > /etc/timestamp
diff --git a/meta/packages/initscripts/initscripts_1.0.bb b/meta/packages/initscripts/initscripts_1.0.bb
index 5f59bf9d7b..06a12c04a5 100644
--- a/meta/packages/initscripts/initscripts_1.0.bb
+++ b/meta/packages/initscripts/initscripts_1.0.bb
@@ -2,12 +2,12 @@ DESCRIPTION = "SysV init scripts"
SECTION = "base"
PRIORITY = "required"
DEPENDS = "makedevs"
-DEPENDS_openzaurus = "makedevs virtual/kernel"
RDEPENDS = "makedevs"
LICENSE = "GPL"
-PR = "r74"
+PR = "r100"
-SRC_URI = "file://halt \
+SRC_URI = "file://functions \
+ file://halt \
file://ramdisk \
file://umountfs \
file://devices \
@@ -31,39 +31,29 @@ SRC_URI = "file://halt \
file://device_table.txt \
file://populate-volatile.sh \
file://volatiles \
- file://save-rtc.sh"
+ file://save-rtc.sh"
-SRC_URI_append_arm = " file://alignment.sh"
-SRC_URI_append_openzaurus = " file://checkversion"
+SRC_URI_append_arm = " file://alignment.sh"
-def read_kernel_version(d):
- import bb
- distro = bb.data.getVar('DISTRO', d, 1)
- filename = bb.data.getVar('STAGING_KERNEL_DIR', d, 1)
- if distro == "openzaurus":
- return file( filename + "/kernel-abiversion", "r" ).read().strip()
- else:
- return "not important"
KERNEL_VERSION = ""
-KERNEL_VERSION_openzaurus = "${@read_kernel_version(d)}"
-PACKAGE_ARCH_openzaurus = "${MACHINE_ARCH}"
do_install () {
#
# Create directories and install device independent scripts
#
- install -d ${D}${sysconfdir}/init.d \
- ${D}${sysconfdir}/rcS.d \
- ${D}${sysconfdir}/rc0.d \
- ${D}${sysconfdir}/rc1.d \
- ${D}${sysconfdir}/rc2.d \
- ${D}${sysconfdir}/rc3.d \
- ${D}${sysconfdir}/rc4.d \
- ${D}${sysconfdir}/rc5.d \
- ${D}${sysconfdir}/rc6.d \
- ${D}${sysconfdir}/default \
- ${D}${sysconfdir}/default/volatiles
+ install -d ${D}${sysconfdir}/init.d
+ install -d ${D}${sysconfdir}/rcS.d
+ install -d ${D}${sysconfdir}/rc0.d
+ install -d ${D}${sysconfdir}/rc1.d
+ install -d ${D}${sysconfdir}/rc2.d
+ install -d ${D}${sysconfdir}/rc3.d
+ install -d ${D}${sysconfdir}/rc4.d
+ install -d ${D}${sysconfdir}/rc5.d
+ install -d ${D}${sysconfdir}/rc6.d
+ install -d ${D}${sysconfdir}/default
+ install -d ${D}${sysconfdir}/default/volatiles
+ install -m 0755 ${WORKDIR}/functions ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/bootmisc.sh ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/checkroot.sh ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/finish ${D}${sysconfdir}/init.d
@@ -82,7 +72,7 @@ do_install () {
install -m 0755 ${WORKDIR}/devpts ${D}${sysconfdir}/default
install -m 0755 ${WORKDIR}/sysfs.sh ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/populate-volatile.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/save-rtc.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/save-rtc.sh ${D}${sysconfdir}/init.d
install -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/00_core
if [ "${TARGET_ARCH}" = "arm" ]; then
install -m 0755 ${WORKDIR}/alignment.sh ${D}${sysconfdir}/init.d
@@ -90,13 +80,6 @@ do_install () {
#
# Install device dependent scripts
#
-
- if [ "${DISTRO}" = "openzaurus" ]; then
- cat ${WORKDIR}/checkversion | sed -e "s,VERSION,${KERNEL_VERSION}-${DISTRO_VERSION}," > ${D}${sysconfdir}/init.d/checkversion
- chmod 0755 ${D}${sysconfdir}/init.d/checkversion
- ln -sf ../init.d/checkversion ${D}${sysconfdir}/rcS.d/S01version
- fi
-
install -m 0755 ${WORKDIR}/banner ${D}${sysconfdir}/init.d/banner
install -m 0755 ${WORKDIR}/devices ${D}${sysconfdir}/init.d/devices
install -m 0755 ${WORKDIR}/umountfs ${D}${sysconfdir}/init.d/umountfs
@@ -112,7 +95,7 @@ do_install () {
ln -sf ../init.d/umountnfs.sh ${D}${sysconfdir}/rc6.d/S31umountnfs.sh
ln -sf ../init.d/umountfs ${D}${sysconfdir}/rc6.d/S40umountfs
# udev will run at S55 if installed
- ln -sf ../init.d/ramdisk ${D}${sysconfdir}/rcS.d/S30ramdisk
+ ln -sf ../init.d/ramdisk ${D}${sysconfdir}/rcS.d/S30ramdisk
ln -sf ../init.d/reboot ${D}${sysconfdir}/rc6.d/S90reboot
ln -sf ../init.d/sendsigs ${D}${sysconfdir}/rc0.d/S20sendsigs
# ln -sf ../init.d/urandom ${D}${sysconfdir}/rc0.d/S30urandom
@@ -121,7 +104,7 @@ do_install () {
# udev will run at S55 if installed
ln -sf ../init.d/halt ${D}${sysconfdir}/rc0.d/S90halt
ln -sf ../init.d/save-rtc.sh ${D}${sysconfdir}/rc0.d/S25save-rtc.sh
- ln -sf ../init.d/save-rtc.sh ${D}${sysconfdir}/rc6.d/S25save-rtc.sh
+ ln -sf ../init.d/save-rtc.sh ${D}${sysconfdir}/rc6.d/S25save-rtc.sh
ln -sf ../init.d/banner ${D}${sysconfdir}/rcS.d/S02banner
ln -sf ../init.d/checkroot.sh ${D}${sysconfdir}/rcS.d/S10checkroot.sh
# ln -sf ../init.d/checkfs.sh ${D}${sysconfdir}/rcS.d/S30checkfs.sh