summaryrefslogtreecommitdiffstats
path: root/bin/quilt.in
diff options
context:
space:
mode:
authorMartin Quinson <mquinson@debian.org>2003-01-29 09:19:25 +0000
committerMartin Quinson <mquinson@debian.org>2003-01-29 09:19:25 +0000
commit9df01863feac767ebe01e99cfc597632416ca27a (patch)
tree27b023026b54e2db2a784ce86b7b075868eaf960 /bin/quilt.in
parent55181ac1bcf951cc22cba26dfbca813fba2b0167 (diff)
downloadquilt-9df01863feac767ebe01e99cfc597632416ca27a.tar.gz
Version 0.21 from Andreas Gruenbacher
Diffstat (limited to 'bin/quilt.in')
-rw-r--r--bin/quilt.in90
1 files changed, 90 insertions, 0 deletions
diff --git a/bin/quilt.in b/bin/quilt.in
new file mode 100644
index 0000000..d1a6867
--- /dev/null
+++ b/bin/quilt.in
@@ -0,0 +1,90 @@
+#!/bin/bash
+
+# This script is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# See the COPYING and AUTHORS files for more details.
+
+usage()
+{
+
+ echo "Usage: quilt command [-h] ..." >&2
+ #echo "Commands are:" $(
+ # local command
+ # for command in @QUILT@/*
+ # do
+ # if [ -f "$command" -a -x "$command" ]
+ # then
+ # echo "${command#@QUILT@/}"
+ # fi
+ # done \
+ # | sort
+ #)
+ echo "Commands are:"
+ quilt_commands \
+ | sort \
+ | column | column -t \
+ | sed -e 's/^/\t/'
+ exit 1
+}
+
+quilt_commands()
+{
+ local command
+ for command in @QUILT@/*
+ do
+ if [ -f "$command" -a -x "$command" ]
+ then
+ echo ${command##@QUILT@/}
+ fi
+ done
+}
+
+for arg in "$@"
+do
+ case $arg in
+ [^-]*)
+ if [ -z "$command" ]
+ then
+ command="$arg"
+ else
+ args[${#args[@]}]="$arg"
+ fi ;;
+ *)
+ args[${#args[@]}]="$arg" ;;
+ esac
+done
+
+if ! [ -f "@QUILT@/$command" -a -x "@QUILT@/$command" ]
+then
+ if [ -n "$command" ]
+ then
+ for arg in $(quilt_commands)
+ do
+ case "$arg" in
+ $command*)
+ commands[${#commands[@]}]="$arg"
+ ;;
+ esac
+ done
+ fi
+
+ if [ ${#commands[@]} -eq 0 ]
+ then
+ usage
+ elif [ ${#commands[@]} -eq 1 ]
+ then
+ command="${commands[0]}"
+ unset commands
+ else
+ echo "$command:" "${commands[@]}" >&2
+ exit 1
+ fi
+fi
+
+set -- "${args[@]}"
+unset arg args
+
+#. @QUILT@/$command
+bash -c ". @QUILT@/$command" "quilt ${command##*/}" "$@"