diff options
author | Martin Quinson <mquinson@debian.org> | 2003-01-29 09:19:25 +0000 |
---|---|---|
committer | Martin Quinson <mquinson@debian.org> | 2003-01-29 09:19:25 +0000 |
commit | 9df01863feac767ebe01e99cfc597632416ca27a (patch) | |
tree | 27b023026b54e2db2a784ce86b7b075868eaf960 /bin/quilt.in | |
parent | 55181ac1bcf951cc22cba26dfbca813fba2b0167 (diff) | |
download | quilt-9df01863feac767ebe01e99cfc597632416ca27a.tar.gz |
Version 0.21 from Andreas Gruenbacher
Diffstat (limited to 'bin/quilt.in')
-rw-r--r-- | bin/quilt.in | 90 |
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##*/}" "$@" |