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 /pushpatch.in | |
parent | 55181ac1bcf951cc22cba26dfbca813fba2b0167 (diff) | |
download | quilt-9df01863feac767ebe01e99cfc597632416ca27a.tar.gz |
Version 0.21 from Andreas Gruenbacher
Diffstat (limited to 'pushpatch.in')
-rwxr-xr-x | pushpatch.in | 169 |
1 files changed, 0 insertions, 169 deletions
diff --git a/pushpatch.in b/pushpatch.in deleted file mode 100755 index d8fcab9..0000000 --- a/pushpatch.in +++ /dev/null @@ -1,169 +0,0 @@ -#! /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. - -# Read in library functions -if ! [ -r @LIB@/patchfns ] -then - echo "Cannot read library @LIB@/patchfns" >&2 - exit 1 -fi -. @LIB@/patchfns - -usage() -{ - echo "Usage: pushpatch [-afq] [npatches|patchname]" - if [ x$1 = x-h ] - then - cat <<EOF - -Apply patch(es) from the series file. A number of patches -to apply, or a patch name can be specified. If a patch -name is given, apply all patches up to and including the -named patch. If neither a number nor a patch name is -specified, apply the next patch. - --a Apply all patches in the series file. - --f Force apply, even if the patch has rejects. - --q Quiet operation. - -EOF - exit 0 - else - exit 1 - fi -} - -list_patches() -{ - local top=$(top_patch) n=0 patch - if [ -n "$top" ] - then - patches_after $top - else - cat_series - fi \ - | if [ -n "$opt_all" ] - then - cat - else - while read patch - do - if [ -n "$number" ] - then - if [ $n -eq $number ] - then - break - fi - n=$[$n+1] - fi - echo $patch - if [ $patch = "$stop_at_patch" ] - then - break - fi - done - if [ -n "$stop_at_patch" -a "$patch" != "$stop_at_patch" ] - then - echo "Patch $stop_at_patch not found in file series" >&2 - return 1 - fi - fi -} - -options=`getopt -o fqah -- "$@"` - -if [ $? -ne 0 ] -then - usage -fi - -eval set -- "$options" - -while true -do - case "$1" in - -f) - opt_force=1 - shift ;; - -q) - opt_quiet=1 - shift ;; - -a) - opt_all=1 - shift ;; - -h) - usage -h ;; - --) - shift - break ;; - esac -done - -if [ $# -gt 1 ] -then - usage -fi - -if [ $# -eq 1 ] -then - if is_numeric $1 - then - number=$1 - else - stop_at_patch=$(stripit $1) - fi -else - [ -z "$opt_all" ] && number=1 -fi - -[ -n "$opt_force" ] && - apatch_options="$apatch_options -f" -[ -n "$opt_quiet" ] && - apatch_options="$apatch_options -q" - -if [ -n "$stop_at_patch" ] -then - if is_applied $stop_at_patch - then - echo "Patch $stop_at_patch is already applied." - exit 1 - fi -fi - -if ! patches=$(list_patches) 2>&1 -then - exit 1 -elif [ -z "$patches" ] -then - top=$(top_patch) - if [ -z "$top" ] - then - echo "No patches applied" - else - echo "File series fully applied, ends at patch $top" - fi - exit 0 -fi - -trap "interrupted=1" SIGINT - -for patch in $patches -do - if ! @LIB@/apatch $apatch_options $patch - then - exit 1 - fi - if [ -n "$interrupted" ] - then - echo "pushpatch interrupted by user" - exit 1 - fi - [ -z "$opt_quiet" ] && echo -done |