"failstar" sounds like a name for a cruise liner from the 80s. As "*" isn't a desirable part of directory names, just name the whole thing "fail/", the core parts being stored in "fail/core/". Additionally fixing two build system dependency issues: - missing jobserver -> protomessages dependency - broken bochs -> fail dependency (add_custom_target DEPENDS only allows plain file dependencies ... cmake for the win) git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@956 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
56 lines
1.3 KiB
Bash
Executable File
56 lines
1.3 KiB
Bash
Executable File
#! /bin/bash
|
|
#
|
|
# A simple script to load up the kernel module and create the device nodes
|
|
# for it.
|
|
#
|
|
# Note:
|
|
# this must be run as root
|
|
#
|
|
|
|
# Work out where the module is
|
|
kmodule="`dirname $0`/../kernel/plex86.o"
|
|
|
|
# Check that root is executing us
|
|
if [ "$EUID" != "0" ]; then
|
|
echo "Sorry, you need to be root for this script to work."
|
|
echo "use 'su -c $0' and enter the root password when prompted"
|
|
exit -1
|
|
fi
|
|
|
|
# Check if the module exists
|
|
if [ ! -f "$kmodule" ]; then
|
|
echo "The kernel module ($kmodule) does not exist!"
|
|
exit -1
|
|
fi
|
|
|
|
# Check if the module is already loaded
|
|
if [ "x`grep plex86 /proc/devices`" != "x" ]; then
|
|
echo "The kernel module is already loaded!"
|
|
exit -1
|
|
fi
|
|
|
|
# Remove any stale device nodes
|
|
# (extend for any minor devices created in the future)
|
|
rm -f /dev/plex86
|
|
|
|
# Load up the module with insmod
|
|
/sbin/insmod $kmodule
|
|
|
|
# Check if the module loaded
|
|
major=`grep plex86 /proc/devices | awk '/plex86/ {print $1;}'`
|
|
if [ "x$major" = "x" ]; then
|
|
echo "The kernel module failed to load!"
|
|
exit -1
|
|
fi
|
|
|
|
# Create the device node and set its permissions
|
|
# (extend for any minor devices created in the future)
|
|
if [ ! -c /dev/plex86 ]; then
|
|
/bin/mknod /dev/plex86 c $major 0
|
|
fi
|
|
chmod a+rw /dev/plex86
|
|
|
|
# Job done - Give a little positive feedback
|
|
echo "The kernel module is sucessfully installed."
|
|
exit 0
|