All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] --foo bar cmdline argument parsing support for grub-* scripts
@ 2010-02-07  5:12 BVK Chaitanya
  2010-02-07 15:02 ` Colin Watson
  0 siblings, 1 reply; 6+ messages in thread
From: BVK Chaitanya @ 2010-02-07  5:12 UTC (permalink / raw)
  To: The development of GRUB 2

[-- Attachment #1: Type: text/plain, Size: 175 bytes --]

Hi,


Attached patch adds support for "--option argument" style command line
parsing.  Currently all these script only support "--option=argument"
style.



-- 
bvk.chaitanya

[-- Attachment #2: fix-cmdline-arg-parsing.patch.txt --]
[-- Type: text/plain, Size: 12535 bytes --]

# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: bvk.groups@gmail.com-20100207050104-9ptsm4whvibzr2k6
# target_branch: file:///home/bvk/Work/grub2/mainline/
# testament_sha1: 5aafafe74a15ba6adf3fccd3253863820f21a972
# timestamp: 2010-02-07 10:37:51 +0530
# base_revision_id: phcoder@gmail.com-20100205233207-csk991t3yceon285
# 
# Begin patch
=== modified file 'util/grub-install.in'
--- util/grub-install.in	2010-01-20 01:19:53 +0000
+++ util/grub-install.in	2010-02-06 08:59:42 +0000
@@ -105,7 +105,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -113,33 +117,62 @@
     -v | --version)
 	echo "grub-install (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --modules)
+	modules=$1; shift;;
     --modules=*)
 	modules=`echo "$option" | sed 's/--modules=//'` ;;
+
+    --font)
+	font=$1; shift;;
     --font=*)
 	font=`echo "$option" | sed 's/--font=//'` ;;
+
+    --root-directory)
+	rootdir=$1; shift;;
     --root-directory=*)
 	rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
+
+    --grub-setup)
+	grub_setup=$1; shift;;
     --grub-setup=*)
 	grub_setup=`echo "$option" | sed 's/--grub-setup=//'` ;;
+
+    --grub-mkimage)
+	grub_mkimage=$1; shift;;
     --grub-mkimage=*)
 	grub_mkimage=`echo "$option" | sed 's/--grub-mkimage=//'` ;;
+
+    --grub-mkdevicemap)
+	grub_mkdevicemap=$1; shift;;
     --grub-mkdevicemap=*)
 	grub_mkdevicemap=`echo "$option" | sed 's/--grub-mkdevicemap=//'` ;;
+
+    --grub-probe)
+	grub_probe=$1; shift;;
     --grub-probe=*)
 	grub_probe=`echo "$option" | sed 's/--grub-probe=//'` ;;
+
     --no-floppy)
 	no_floppy="--no-floppy" ;;
     --recheck)
 	recheck=yes ;;
+
+    --disk-module)
+	if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
+	    disk_module=$1; shift;
+	fi ;;
     --disk-module=*)
 	if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
            disk_module=`echo "$option" | sed 's/--disk-module=//'`
         fi ;;
+
     # This is an undocumented feature...
     --debug)
 	debug=yes ;;
     -f | --force)
         setup_force="--force" ;;
+
     -*)
 	echo "Unrecognized option \`$option'" 1>&2
 	usage

=== modified file 'util/grub-mkconfig.in'
--- util/grub-mkconfig.in	2009-12-12 00:43:32 +0000
+++ util/grub-mkconfig.in	2010-02-07 04:44:50 +0000
@@ -50,7 +50,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -58,9 +62,9 @@
     -v | --version)
 	echo "$0 (GNU GRUB ${package_version})"
 	exit 0 ;;
-    -o)
+    -o | --output)
+	grub_cfg=$1
 	shift
-	grub_cfg=$1
 	;;
     --output=*)
 	grub_cfg=`echo "$option" | sed 's/--output=//'`

=== modified file 'util/grub-mkrescue.in'
--- util/grub-mkrescue.in	2009-12-22 17:20:27 +0000
+++ util/grub-mkrescue.in	2010-02-07 04:44:50 +0000
@@ -42,8 +42,8 @@
 
   -h, --help              print this message and exit
   -v, --version           print the version information and exit
+  -o, --output=FILE       save output in FILE [required]
   --modules=MODULES       pre-load specified modules MODULES
-  --output=FILE           save output in FILE [required]
 
 $0 generates a bootable rescue image with specified source files or directories.
 
@@ -52,7 +52,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -60,11 +64,24 @@
     -v | --version)
 	echo "$0 (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --modules)
+        modules=$1; shift ;;
     --modules=*)
 	modules=`echo "$option" | sed 's/--modules=//'` ;;
+
+    -o | --output)
+	output_image=$1; shift ;;
     --output=*)
 	output_image=`echo "$option" | sed 's/--output=//'` ;;
+
     # Intentionally undocumented
+    --override-directory)
+        override_dir=$1
+	shift
+	PATH=${override_dir}:$PATH
+	export PATH
+	;;
     --override-directory=*)
 	override_dir=`echo "${option}/" | sed 's/--override-directory=//'`
 	PATH=${override_dir}:$PATH

=== modified file 'util/grub-reboot.in'
--- util/grub-reboot.in	2010-01-05 11:16:42 +0000
+++ util/grub-reboot.in	2010-02-07 05:01:04 +0000
@@ -45,7 +45,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -53,8 +57,12 @@
     -v | --version)
 	echo "grub-reboot (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --root-directory)
+	rootdir=$1; shift ;;
     --root-directory=*)
 	rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
+
     -*)
 	echo "Unrecognized option \`$option'" 1>&2
 	usage

=== modified file 'util/grub-set-default.in'
--- util/grub-set-default.in	2009-12-08 01:00:26 +0000
+++ util/grub-set-default.in	2010-02-07 05:01:04 +0000
@@ -45,7 +45,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -53,8 +57,12 @@
     -v | --version)
 	echo "grub-set-default (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --root-directory)
+	rootdir=$1; shift ;;
     --root-directory=*)
 	rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
+
     -*)
 	echo "Unrecognized option \`$option'" 1>&2
 	usage

=== modified file 'util/i386/efi/grub-install.in'
--- util/i386/efi/grub-install.in	2010-01-05 10:53:03 +0000
+++ util/i386/efi/grub-install.in	2010-02-07 05:01:04 +0000
@@ -71,7 +71,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -79,16 +83,32 @@
     -v | --version)
 	echo "grub-install (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --modules)
+        modules=$1; shift ;;
     --modules=*)
 	modules=`echo "$option" | sed 's/--modules=//'` ;;
+
+    --root-directory)
+	rootdir=$1; shift ;;
     --root-directory=*)
 	rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
+
+    --grub-mkimage)
+	grub_mkimage=$1; shift ;;
     --grub-mkimage=*)
 	grub_mkimage=`echo "$option" | sed 's/--grub-mkimage=//'` ;;
+
+    --grub-mkdevicemap)
+	grub_mkdevicemap=$1; shift ;;
     --grub-mkdevicemap=*)
 	grub_mkdevicemap=`echo "$option" | sed 's/--grub-mkdevicemap=//'` ;;
+
+    --grub-probe)
+	grub_probe=$1; shift ;;
     --grub-probe=*)
 	grub_probe=`echo "$option" | sed 's/--grub-probe=//'` ;;
+
     --no-floppy)
 	no_floppy="--no-floppy" ;;
     --recheck)

=== modified file 'util/ieee1275/grub-install.in'
--- util/ieee1275/grub-install.in	2010-01-28 22:10:37 +0000
+++ util/ieee1275/grub-install.in	2010-02-07 05:01:04 +0000
@@ -75,7 +75,11 @@
 }
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -83,16 +87,32 @@
     -v | --version)
 	echo "grub-install (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --modules)
+	modules=$1; shift ;;
     --modules=*)
 	modules=`echo "$option" | sed 's/--modules=//'` ;;
+
+    --root-directory)
+	rootdir=$1; shift ;;
     --root-directory=*)
 	rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
+
+    --grub-mkdevicemap)
+	grub_mkdevicemap=$1; shift ;;
     --grub-mkdevicemap=*)
 	grub_mkdevicemap=`echo "$option" | sed 's/--grub-mkdevicemap=//'` ;;
+
+    --grub-mkimage)
+	grub_mkimage=$1; shift ;;
     --grub-mkimage=*)
 	grub_mkimage=`echo "$option" | sed 's/--grub-mkimage=//'` ;;
+
+    --grub-probe)
+	grub_probe=$1; shift ;;
     --grub-probe=*)
 	grub_probe=`echo "$option" | sed 's/--grub-probe=//'` ;;
+
     --no-nvram)
 	update_nvram=no ;;
     # This is an undocumented feature...

=== modified file 'util/powerpc/ieee1275/grub-mkrescue.in'
--- util/powerpc/ieee1275/grub-mkrescue.in	2009-11-11 23:21:13 +0000
+++ util/powerpc/ieee1275/grub-mkrescue.in	2010-02-07 05:01:04 +0000
@@ -55,7 +55,11 @@
 input_dir=${pkglibdir}
 
 # Check the arguments.
-for option in "$@"; do
+while test $# -gt 0
+do
+    option=$1
+    shift
+
     case "$option" in
     -h | --help)
 	usage
@@ -63,12 +67,22 @@
     -v | --version)
 	echo "grub-mkrescue (GNU GRUB ${PACKAGE_VERSION})"
 	exit 0 ;;
+
+    --modules)
+	modules=$1; shift ;;
     --modules=*)
 	modules=`echo "$option" | sed 's/--modules=//'` ;;
+
+    --pkglibdir)
+	input_dir=$1; shift ;;
     --pkglibdir=*)
 	input_dir=`echo "$option" | sed 's/--pkglibdir=//'` ;;
+
+    --grub-mkimage)
+	grub_mkimage=$1; shift ;;
     --grub-mkimage=*)
 	grub_mkimage=`echo "$option" | sed 's/--grub-mkimage=//'` ;;
+
     -*)
 	echo "Unrecognized option \`$option'" 1>&2
 	usage

# Begin bundle
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-04-12 17:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-07  5:12 [PATCH] --foo bar cmdline argument parsing support for grub-* scripts BVK Chaitanya
2010-02-07 15:02 ` Colin Watson
2010-02-08 16:23   ` BVK Chaitanya
2010-02-09 12:43     ` Grégoire Sutre
2010-02-09 12:54       ` Colin Watson
2010-04-12 17:30         ` BVK Chaitanya

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.