diff options
Diffstat (limited to 'init.d/hwclock.in')
| -rw-r--r-- | init.d/hwclock.in | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/init.d/hwclock.in b/init.d/hwclock.in deleted file mode 100644 index 4b0da02c..00000000 --- a/init.d/hwclock.in +++ /dev/null @@ -1,141 +0,0 @@ -#!@SBINDIR@/openrc-run -# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> -# Released under the 2-clause BSD license. - -extra_commands="save show" - -description="Sets the local clock to UTC or Local Time." -description_save="Saves the current time in the BIOS." -description_show="Displays the current time in the BIOS." - -: ${clock_adjfile:=${CLOCK_ADJFILE}} -: ${clock_args:=${CLOCK_OPTS}} -: ${clock_systohc:=${CLOCK_SYSTOHC}} -: ${clock:=${CLOCK:-UTC}} -if [ "$clock" = "UTC" ]; then - utc="UTC" - utc_cmd="--utc" -else - utc="Local Time" - utc_cmd="--localtime" -fi - -depend() -{ - provide clock - if yesno $clock_adjfile; then - use root - else - before * - fi - keyword -openvz -prefix -uml -vserver -xenu -lxc -} - -setupopts() -{ - case "$(uname -m)" in - s390*) - utc="s390" - ;; - *) - if [ -e /proc/devices ] && \ - grep -q " cobd$" /proc/devices - then - utc="coLinux" - fi - ;; - esac - - case "$utc" in - UTC|Local" "Time);; - *) unset utc_cmd;; - esac -} - -# hwclock doesn't always return non zero on error -_hwclock() -{ - local err="$(hwclock "$@" 2>&1 >/dev/null)" - - [ -z "$err" ] && return 0 - echo "${err}" >&2 - return 1 -} - -start() -{ - local retval=0 errstr="" - setupopts - - if [ -z "$utc_cmd" ]; then - ewarn "Not setting clock for $utc system" - return 0 - fi - - ebegin "Setting system clock using the hardware clock [$utc]" - if [ -e /proc/modules ]; then - local rtc= - for rtc in /dev/rtc /dev/rtc[0-9]*; do - [ -e "$rtc" ] && break - done - if [ ! -e "${rtc}" ]; then - modprobe -q rtc-cmos || modprobe -q rtc || modprobe -q genrtc - fi - fi - - # Always set the kernel's time zone. - _hwclock --systz $utc_cmd $clock_args - : $(( retval += $? )) - - if [ -e /etc/adjtime ] && yesno $clock_adjfile; then - _hwclock --adjust $utc_cmd - : $(( retval += $? )) - fi - - if yesno ${clock_hctosys:-YES}; then - _hwclock --hctosys $utc_cmd $clock_args - : $(( retval += $? )) - fi - - eend $retval "Failed to set the system clock" - - return 0 -} - -stop() -{ - # Don't tweak the hardware clock on LiveCD halt. - [ -n "$CDBOOT" ] && return 0 - yesno ${clock_systohc:-YES} || return 0 - - local retval=0 errstr="" - setupopts - - [ -z "$utc_cmd" ] && return 0 - - ebegin "Setting hardware clock using the system clock" "[$utc]" - - if ! yesno $clock_adjfile; then - # Some implementations don't handle adjustments - if LC_ALL=C hwclock --help 2>&1 | grep -q "\-\-noadjfile"; then - utc_cmd="$utc_cmd --noadjfile" - fi - fi - - _hwclock --systohc $utc_cmd $clock_args - retval=$? - - eend $retval "Failed to sync clocks" -} - -save() -{ - clock_systohc=yes - stop -} - -show() -{ - setupopts - hwclock --show "$utc_cmd" $clock_args -} |
