#!/bin/sh
# Mount local filesystems, turn on swap
#
. /boot.conf
test "$LOG_START" && echo "<*> Executing '$0 $*'"

function filesize() {
    stat -L -c '%s' "$1"
}

test "$LOG_STAGE" && echo "* Enabling swapping on swap partitions designated in /etc/fstab"
swapon -a \
|| echo "! swapon -a failure"

if test "$SWAPFILE_SIZE_M" && test "$SWAPFILE_SIZE_M" -ne 0; then
    echo "* Enabling swapping on swap file (/var/swap). Swap file size: $SWAPFILE_SIZE_M Mb"
    #echo `filesize /var/swap`
    #echo "$((SWAPFILE_SIZE_M*1024*1024))"
    #echo -n "Press <Enter>:"; read junk
    if test ! -f /var/swap \
    || test `filesize /var/swap` != "$((SWAPFILE_SIZE_M*1024*1024))"; then
        echo "* (Re)creating swap file"
        dd if=/dev/zero of=/var/swap bs=1024 count=$(($SWAPFILE_SIZE_M*1024)) \
	|| echo "! failed to create /var/swap"
    fi
    mkswap /var/swap \
    || echo "! mkswap /var/swap failure"
    swapon /var/swap \
    || echo "! swapon /var/swap failure"
fi

exit 0
