summaryrefslogtreecommitdiff
path: root/util/grub-mkconfig.in
diff options
context:
space:
mode:
authorBVK Chaitanya <bvk.groups@gmail.com>2010-04-12 21:33:03 +0530
committerBVK Chaitanya <bvk.groups@gmail.com>2010-04-12 21:33:03 +0530
commitb02c7c8fb57a92cd04a84d32bb67c6142980f144 (patch)
treedce33217d9614bfaba4cb0fed0d78d616f26d02d /util/grub-mkconfig.in
parent8f33d5549f597cff8adc8c4a87eb1c1aade9a124 (diff)
added getopt like error for missing option parameters
Diffstat (limited to 'util/grub-mkconfig.in')
-rw-r--r--util/grub-mkconfig.in19
1 files changed, 16 insertions, 3 deletions
diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
index 82964836b..c3aa57723 100644
--- a/util/grub-mkconfig.in
+++ b/util/grub-mkconfig.in
@@ -49,6 +49,17 @@ Report bugs to <bug-grub@gnu.org>.
EOF
}
+argument () {
+ opt=$1
+ shift
+
+ if test $# -eq 0; then
+ echo "$0: option requires an argument -- '$opt'" 1>&2
+ exit 1
+ fi
+ echo $1
+}
+
# Check the arguments.
while test $# -gt 0
do
@@ -63,9 +74,7 @@ do
echo "$0 (GNU GRUB ${package_version})"
exit 0 ;;
-o | --output)
- grub_cfg=$1
- shift
- ;;
+ grub_cfg=`argument $option "$@"`; shift;;
--output=*)
grub_cfg=`echo "$option" | sed 's/--output=//'`
;;
@@ -74,6 +83,10 @@ do
usage
exit 1
;;
+ *)
+ echo "Invalid parameter, $option" 1>&2
+ exit 1
+ ;;
esac
done