[SCM] UNNAMED PROJECT branch, master, updated. 0.40-8-g3f252f6
Niels Thykier
niels at thykier.net
Mon Mar 12 07:56:23 UTC 2012
The following commit has been merged in the master branch:
commit 3f252f654a8bc8fb33ab9484777d3dbe5725a6f5
Author: Niels Thykier <niels at thykier.net>
Date: Mon Mar 12 08:53:49 2012 +0100
jh_lib.sh: Try to parse -O options
Parse (and accept) known options passed via the -O paramater. Unknown
options are silently discarded (as before).
Signed-off-by: Niels Thykier <niels at thykier.net>
diff --git a/debian/changelog b/debian/changelog
index 07b7008..33e9bd6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,7 +12,9 @@ javatools (0.41) UNRELEASED; urgency=low
[ Niels Thykier ]
* Produce a better error message when a non-existent Jar file is
passed to jh_manifest.
-
+ * Try to parse arguments passed via -O for jh_lib.sh as regular
+ options, but ignore them if they are unknown. Previously, -O
+ options was silently ignored.
-- Sylvestre Ledru <sylvestre at debian.org> Fri, 24 Feb 2012 16:22:58 +0100
diff --git a/jh_lib.sh.in b/jh_lib.sh.in
index 0cb90f6..300f807 100644
--- a/jh_lib.sh.in
+++ b/jh_lib.sh.in
@@ -12,27 +12,30 @@ parseargs()
ARGV=()
debhelper=
while [ -n "$1" ]; do
- if [ "-V" = "$1" ] || [ "--version" = "$1" ]; then
+ ignore=no
+ arg="$1"
+ if [ "-O" = "${arg:0:2}" ] ; then
+ arg="${arg:2}"
+ ignore=yes
+ fi
+ if [ "-V" = "$arg" ] || [ "--version" = "$arg" ]; then
echo "Javahelper Version $JAVATOOLS_VERSION"
exit 0
- elif [ "-h" = "$1" ] || [ "--help" = "$1" ]; then
+ elif [ "-h" = "$arg" ] || [ "--help" = "$arg" ]; then
syntax
- elif [ "--with" = "$1" ]; then
+ elif [ "--with" = "$arg" ]; then
debhelper=true
shift
- elif [ "-O" = "${1:0:2}" ]; then
- # -O from debhelper - we ignore that
- :
- elif [ "-" = "${1:1:1}" ]; then
+ elif [ "-" = "${arg:1:1}" ]; then
# long opt
- optn="`sed 's/^--\([^=]*\)\(=.*\)*$/\1/;s/-/_/g' <<< $1`"
+ optn="`sed 's/^--\([^=]*\)\(=.*\)*$/\1/;s/-/_/g' <<< $arg`"
if [ -z "$optn" ] || ! echo $ARGS | sed 's/-/_/g' | grep $optn >/dev/null; then
- if [ -z "$debhelper" ]; then
- echo "Invalid option: $optn"
- syntax
- fi
+ if [ -z "$debhelper" -a "$ignore" != "yes" ]; then
+ echo "Invalid option: $optn"
+ syntax
+ fi
fi
- optv="`echo $1 | sed -n 's/^[^=]*=\(.*\)$/\1/p'`"
+ optv="`echo $arg | sed -n 's/^[^=]*=\(.*\)$/\1/p'`"
if [ -z "$optv" ]; then
optv=true
fi
@@ -42,16 +45,16 @@ parseargs()
else
export opt_$optn="$optv"
fi
- elif [ "-" = "${1:0:1}" ]; then
+ elif [ "-" = "${arg:0:1}" ]; then
# short opt
- optn="${1:1:1}"
+ optn="${arg:1:1}"
if [ -z "$optn" ] || ! echo $ARGS | grep $optn >/dev/null; then
- if [ -z "$debhelper" ]; then
- echo "Invalid option: $optn"
- syntax
- fi
+ if [ -z "$debhelper" -a "$ignore" != "yes" ]; then
+ echo "Invalid option: $optn"
+ syntax
+ fi
fi
- optv="${1:2}"
+ optv="${arg:2}"
if [ -z "$optv" ]; then
optv=true
fi
@@ -63,7 +66,7 @@ parseargs()
fi
else
# not-opt arg
- ARGV[$ARGC]="$1"
+ ARGV[$ARGC]="$arg"
ARGC=$(( $ARGC + 1 ))
fi
shift
--
UNNAMED PROJECT
More information about the pkg-java-commits
mailing list