- update to 0.50

o Obsoletes fix-test-create-delete.diff.
  o Obsoletes hide-git-desc-error.diff.
  o Obsoletes mail-dont-use-equal-tilde.diff.
  o Obsoletes revert-should-not-hard-link.diff.
  o Obsoletes fix-fr-import-message.diff.
  o Obsoletes lzma-xz-support.patch, except expand part which was
    merged in expand.diff.
  o Obsoletes inspect-lzma-xz.patch.
  o Obsoletes fix-patch-version-detection.patch.
  o Obsoletes setup-add-fuzz-parameter.patch.
  o Obsoletes setup-support-reverse-patch.patch.
  o Obsoletes completion-revert.patch.
  o Obsoletes inspect-shell-syntax-errors.patch.
  o Obsoletes mail-fix-a-temporary-directory-leak.patch.
  o Too many upstream changes in 34 months to list.
- Add missing requires: findutils.
- Add recommends: xz.

OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/quilt?expand=0&rev=37
This commit is contained in:
Jean Delvare 2011-12-06 14:23:06 +00:00 committed by Git OBS Bridge
parent 5d4004c84c
commit 73a1d19a84
20 changed files with 55 additions and 594 deletions

View File

@ -1,26 +0,0 @@
The version of quilt we have currently doesn't have a "remove" command but
it has a "revert" command, so the bash completion should handle that.
---
bash_completion | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- quilt-0.48.orig/bash_completion
+++ quilt-0.48/bash_completion
@@ -97,7 +97,7 @@ _quilt_completion()
# quilt sub commands
cmds='add annotate applied delete diff edit files fold fork graph \
grep header import mail new next patches pop previous push refresh \
- remove rename series setup snapshot top unapplied'
+ revert rename series setup snapshot top unapplied'
# if no command were given, complete on commands
if [[ $COMP_CWORD -eq 1 ]] ; then
@@ -253,7 +253,7 @@ _quilt_completion()
;;
esac
;;
- remove)
+ revert)
case $prev in
-P)
COMPREPLY=( $( compgen -W "$(quilt applied)" -- $cur ) )

View File

@ -3,18 +3,18 @@
doc/quilt.1.in | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
--- quilt-0.48.orig/Makefile.in
+++ quilt-0.48/Makefile.in
@@ -266,7 +266,7 @@ $(patsubst %.in,%,$(wildcard bin/*.in qu
-e 's:@VERSION''@:$(VERSION):g' \
--- quilt-0.50.orig/Makefile.in
+++ quilt-0.50/Makefile.in
@@ -268,7 +268,7 @@ $(patsubst %.in,%,$(wildcard bin/*.in qu
-e 's:@RELEASE''@:$(RELEASE):g' \
-e 's:@ETCDIR''@:$(etcdir):g' \
-e 's:@LOCALEDIR''@:$(localedir):g' \
- -e 's:@DOCSUBDIR''@:$(docdir)/$(PACKAGE)-$(VERSION):g' \
+ -e 's:@DOCSUBDIR''@:$(docdir)/$(PACKAGE):g' \
$< > $@
@$(if $(filter-out $<,$(NON_EXEC_IN)),chmod +x $@)
@@ -325,11 +325,11 @@ endif
@@ -327,11 +327,11 @@ endif
$(INSTALL) -d $(BUILD_ROOT)$(libdir)/$(PACKAGE)
$(INSTALL) -m 755 $(LIB:%=lib/%) $(BUILD_ROOT)$(libdir)/$(PACKAGE)/
@ -29,7 +29,7 @@
$(INSTALL) -d $(BUILD_ROOT)$(mandir)/man1
$(INSTALL) -m 644 $(MAN1) $(BUILD_ROOT)$(mandir)/man1/
@@ -367,7 +367,7 @@ uninstall ::
@@ -369,7 +369,7 @@ uninstall ::
$(notdir $(MAN1))) \
$(BUILD_ROOT)$(etcdir)/bash_completion.d/quilt \
$(BUILD_ROOT)$(etcdir)/quilt.quiltrc \
@ -38,9 +38,9 @@
$(BUILD_ROOT)$(emacsdir)/quilt.el
check: $(TESTS:test/%.test=test/.%.ok)
--- quilt-0.48.orig/doc/quilt.1.in
+++ quilt-0.48/doc/quilt.1.in
@@ -217,7 +217,7 @@ the pdf documentation, and in the help m
--- quilt-0.50.orig/doc/quilt.1.in
+++ quilt-0.50/doc/quilt.1.in
@@ -224,7 +224,7 @@ the pdf documentation, and in the help m
.SH SEE ALSO

View File

@ -1,7 +1,7 @@
Index: quilt-0.46/quilt/expand.in
Index: quilt-0.50/quilt/expand.in
===================================================================
--- /dev/null
+++ quilt-0.46/quilt/expand.in
+++ quilt-0.50/quilt/expand.in
@@ -0,0 +1,236 @@
+#! @BASH@
+
@ -139,7 +139,7 @@ Index: quilt-0.46/quilt/expand.in
+fi
+
+combined_series=$(patch_file_name $combined_patch \
+ | sed -e 's:\.gz$::' -e 's:\.bz2$::').series
+ | sed -e 's:\.gz$::' -e 's:\.bz2$::' -e 's:\.xz$::' -e 's:\.lzma$::').series
+
+if ! [ -f "$combined_series" ]
+then
@ -239,10 +239,10 @@ Index: quilt-0.46/quilt/expand.in
+### mode: shell-script
+### End:
+# vim:filetype=sh
Index: quilt-0.46/test/expand.test
Index: quilt-0.50/test/expand.test
===================================================================
--- /dev/null
+++ quilt-0.46/test/expand.test
+++ quilt-0.50/test/expand.test
@@ -0,0 +1,121 @@
+ $ rm -rf d
+ $ mkdir -p d/patches

View File

@ -1,18 +0,0 @@
Fix French translation which was saying the exact opposite of the
original message. Rather confusing...
---
po/fr.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- quilt-0.48.orig/po/fr.po
+++ quilt-0.48/po/fr.po
@@ -690,7 +690,7 @@ msgstr ""
#: quilt/import.in:169
msgid "Patch %s is applied\\n"
-msgstr "Le patch %s n'est pas appliqué\\n"
+msgstr "Le patch %s est appliqué\\n"
#: quilt/import.in:178
msgid "Patch %s already exists in series.\\n"

View File

@ -1,22 +0,0 @@
New versions of GNU patch present themselves as "GNU patch" instead
of just "patch".
---
configure.ac | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
--- quilt-0.48.orig/configure.ac
+++ quilt-0.48/configure.ac
@@ -274,7 +274,11 @@ fi
AC_MSG_CHECKING([the version of $PATCH])
if $PATCH --version 2> /dev/null | grep GNU >/dev/null; then
set -- `$PATCH --version 2> /dev/null`
- patch_version=$2
+ if test x$1 = xGNU ; then
+ patch_version=$3
+ else
+ patch_version=$2
+ fi
AC_MSG_RESULT($patch_version)
saved_IFS=$IFS; IFS='.'
set -- $patch_version

View File

@ -1,17 +0,0 @@
It seems that recent versions of GNU patch no longer save rejects in
the case where a patch would create a file which already exists. I
don't know if this is on purpose or if this is a regression, but as
far as quilt goes we don't really care: let's just make the test
case more tolerant.
--- quilt-0.48.orig/test/create-delete.test
+++ quilt-0.48/test/create-delete.test
@@ -34,7 +34,7 @@ file creates and deletions.
> which already exists! Assume -R? [n]
> Apply anyway? [n]
> Skipping patch.
- >~ 1 out of 1 hunk ignored -- saving rejects to (file )?create.rej
+ >~ 1 out of 1 hunk ignored( -- saving rejects to (file )?create.rej)?
>~ The next patch would delete the file `?delete'?,
> which does not exist! Assume -R? [n]
> Apply anyway? [n]

View File

@ -13,10 +13,10 @@ Signed-off-by: Jean Delvare <jdelvare@suse.de>
quilt/grep.in | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- quilt-0.48.orig/quilt/grep.in
+++ quilt-0.48/quilt/grep.in
--- quilt-0.50.orig/quilt/grep.in
+++ quilt-0.50/quilt/grep.in
@@ -117,8 +117,8 @@ fi
find "${myargs[@]}" \( \
find "${myargs[@]:-.}" \( \
-path "./$QUILT_PATCHES/*" -o \
-path "./$QUILT_PC/*" \) -prune -o \
- -type f -print \

View File

@ -1,15 +0,0 @@
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- quilt-0.48.orig/Makefile.in 2009-01-31 18:09:47.000000000 +0100
+++ quilt-0.48/Makefile.in 2009-06-10 14:29:07.000000000 +0200
@@ -123,7 +123,7 @@ SRC += changes2changelog
NON_EXEC_IN := doc/quilt.1 doc/README quilt/scripts/patchfns
-GIT_DESC := $(shell ./git-desc)
+GIT_DESC := $(shell test ! -x ./git-desc || ./git-desc)
TESTS := $(filter-out test/patch-wrapper.test,$(wildcard test/*.test))
DIRT += test/.depend $(wildcard test/.*.ok)

View File

@ -1,52 +0,0 @@
From: Jean Delvare <jdelvare@suse.de>
References: bnc#555273
Add support for lzma and xz compressed files to the inspect script.
Based on preliminary work by Philipp Thomas.
---
quilt/scripts/inspect.in | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
Index: quilt/scripts/inspect.in
===================================================================
--- quilt-0.48/quilt/scripts/inspect.in.orig 2009-01-31 03:28:06.000000000 +0100
+++ quilt-0.48/quilt/scripts/inspect.in 2011-11-10 12:22:14.622721864 +0100
@@ -87,7 +87,17 @@ do
echo "md5sum < $file" >&2
set -- $(md5sum < "$file")
echo "$1 $basename"
- case "$(file -b "$file")" in
+
+ case "$file" in
+ *.lzma)
+ filetype="lzma"
+ ;;
+ *)
+ filetype="$(file -b "$file")"
+ ;;
+ esac
+
+ case "$filetype" in
compress*|gzip*)
echo -n "g" >&4
echo "gzip -cd $file | md5sum" >&2
@@ -100,6 +110,18 @@ do
set -- $(bzip2 -cd "$file" | md5sum)
echo "$1 $basename"
;;
+ lzma*)
+ echo -n "l" >&4
+ echo "lzma -cd $file | md5sum" >&2
+ set -- $(lzma -cd "$file" | md5sum)
+ echo "$1 $basename"
+ ;;
+ xz*|XZ*)
+ echo -n "x" >&4
+ echo "xz -cd $file | md5sum" >&2
+ set -- $(xz -cd "$file" | md5sum)
+ echo "$1 $basename"
+ ;;
esac
done > $tmpdir/md5sums
echo >&4

View File

@ -1,24 +0,0 @@
---
quilt/scripts/inspect.in | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- quilt-0.48.orig/quilt/scripts/inspect.in
+++ quilt-0.48/quilt/scripts/inspect.in
@@ -143,7 +143,7 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
md5sum=$1
while read md5sum_ file_
do
- if [ $md5sum = $md5sum_ ]
+ if [ "$md5sum" = "$md5sum_" ]
then
echo ${file_#\*}
return 0
@@ -162,7 +162,7 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
while read md5sum_ file_
do
- if [ $md5sum = $md5sum_ ]
+ if [ "$md5sum" = "$md5sum_" ]
then
echo ${file_#\*}
return 0

View File

@ -1,124 +0,0 @@
From: Philipp Thomas <pth@suse.de>
References: bnc#555273
Enable quilt to handle compressed tarballs and patches that were
compressed with lzma or xz.
Acked-by: Jean Delvare <jdelvare@suse.de>
---
quilt/expand.in | 2 +-
quilt/push.in | 14 ++++++++++++++
quilt/scripts/parse-patch.in | 18 ++++++++++++++++++
quilt/scripts/patchfns.in | 12 ++++++++++--
4 files changed, 43 insertions(+), 3 deletions(-)
--- quilt-0.48.orig/quilt/expand.in
+++ quilt-0.48/quilt/expand.in
@@ -134,7 +134,7 @@ else
fi
combined_series=$(patch_file_name $combined_patch \
- | sed -e 's:\.gz$::' -e 's:\.bz2$::').series
+ | sed -e 's:\.gz$::' -e 's:\.bz2$::' -e 's:\.xz$::' -e 's:\.lzma$::').series
if ! [ -f "$combined_series" ]
then
--- quilt-0.48.orig/quilt/push.in
+++ quilt-0.48/quilt/push.in
@@ -123,6 +123,20 @@ apply_patch()
--backup --prefix="$QUILT_PC/$patch/" \
$no_reject_files \
-E $silent $force_apply 2>&1
+ elif [ "${patch_file:(-5)}" = ".lzma" ]
+ then
+ lzma -cd $patch_file \
+ | patch $QUILT_PATCH_OPTS $(push_patch_args $patch) \
+ --backup --prefix="$QUILT_PC/$patch/" \
+ $no_reject_files \
+ -E $silent $force_apply 2>&1
+ elif [ "${patch_file:(-3)}" = ".xz" ]
+ then
+ xz -cd $patch_file \
+ | patch $QUILT_PATCH_OPTS $(push_patch_args $patch) \
+ --backup --prefix="$QUILT_PC/$patch/" \
+ $no_reject_files \
+ -E $silent $force_apply 2>&1
else
patch $QUILT_PATCH_OPTS $(push_patch_args $patch) \
--backup --prefix="$QUILT_PC/$patch/" \
--- quilt-0.48.orig/quilt/scripts/parse-patch.in
+++ quilt-0.48/quilt/scripts/parse-patch.in
@@ -60,6 +60,10 @@ foreach my $arg (@ARGV) {
$fh = new FileHandle("gzip -cd $arg |");
} elsif ($arg =~ /\.bz2$/) {
$fh = new FileHandle("bzip2 -cd $arg |");
+ } elsif ($arg =~ /\.lzma$/) {
+ $fh = new FileHandle("lzma -cd $arg |");
+ } elsif ($arg =~ /\.xz$/ {
+ $fh = new FileHandle("xz -cd $arg |");
} else {
$fh = new FileHandle("< $arg");
}
@@ -104,6 +108,20 @@ _("File %s disappeared!\n"), $tempname);
_("File %s disappeared!\n"), $tempname);
}
$fh2 = new FileHandle("| bzip2 -c > $tempname");
+ } elsif ($arg =~ /\.xz$/) {
+ $fh2->close();
+ if (! -e $tempname) {
+ die sprintf(
+_("File %s disappeared!\n"), $tempname);
+ }
+ $fh2 = new FileHandle("| xz -c > $tempname");
+ } elsif ($arg =~ /\.lzma$/) {
+ $fh2->close();
+ if (! -e $tempname) {
+ die sprintf(
+_("File %s disappeared!\n"), $tempname);
+ }
+ $fh2 = new FileHandle("| lzma -c > $tempname");
}
unless ($fh2) {
die "$tempname: $!\n";
--- quilt-0.48.orig/quilt/scripts/patchfns.in
+++ quilt-0.48/quilt/scripts/patchfns.in
@@ -518,7 +518,7 @@ find_patch()
then
local patch=${1#$SUBDIR_DOWN$QUILT_PATCHES/}
local bre=$(quote_bre "$patch")
- set -- $(sed -e "/^$bre\(\|\.patch\|\.diff\?\)\(\|\.gz\|\.bz2\)\([ "$'\t'"]\|$\)/!d" \
+ set -- $(sed -e "/^$bre\(\|\.patch\|\.diff\?\)\(\|\.gz\|\.bz2\|\.xz\|\.lzma\)\([ "$'\t'"]\|$\)/!d" \
-e 's/[ '$'\t''].*//' $SERIES)
if [ $# -eq 1 ]
then
@@ -772,6 +772,10 @@ cat_file()
gzip -cd "$filename" ;;
*.bz2)
bzip2 -cd "$filename" ;;
+ *.lzma)
+ lzma -cd "$filename" ;;
+ *.xz)
+ xz -cd "$filename" ;;
*)
cat "$filename" ;;
esac
@@ -790,6 +794,10 @@ cat_to_new_file()
gzip -c ;;
*.bz2)
bzip2 -c ;;
+ *.xz)
+ xz -c ;;
+ *.lzma)
+ lzma -c ;;
*)
cat ;;
esac \
@@ -915,7 +923,7 @@ next_filename()
{
local patch=$1 base num
base=$(echo "$patch" \
- | sed -r -e 's:(\.gz|\.bz2)$::' -e 's:(\.diff?|\.patch)$::')
+ | sed -r -e 's:(\.gz|\.bz2|\.xz|\.lzma)$::' -e 's:(\.diff?|\.patch)$::')
num=$(echo "$base" | sed -nre 's:.*-([0-9]+)$:\1:'p)
[ -n "$num" ] || num=1
echo "${base%-$num}-$((num+1))${patch#$base}"

View File

@ -1,26 +0,0 @@
Older versions of bash do not support the =~ construct, so stop
using it.
---
quilt/mail.in | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
--- quilt-0.48.orig/quilt/mail.in 2009-01-31 03:28:06.000000000 +0100
+++ quilt-0.48/quilt/mail.in 2009-06-10 14:24:08.000000000 +0200
@@ -101,10 +101,14 @@ references_header() {
then
in_reply_to=$(formail -x In-Reply-To: < "$message")
in_reply_to=${in_reply_to# }
- if [ -n "$in_reply_to" ] &&
- ! [[ "$in_reply_to" =~ "@.*@" ]]
+ if [ -n "$in_reply_to" ]
then
- references=$in_reply_to
+ case "$in_reply_to" in
+ *@*@*)
+ ;;
+ *) references=$in_reply_to
+ ;;
+ esac
fi
fi
if [ -z "$references" ]

View File

@ -1,20 +0,0 @@
From de13f097662d785863f52c1cdaca125cebfe40d2 Mon Sep 17 00:00:00 2001
From: Jean Delvare <jdelvare@suse.de>
Date: Sun, 06 Feb 2011 17:22:20 +0000
Subject: quilt mail: Fix a temporary directory leak.
---
diff --git a/quilt/mail.in b/quilt/mail.in
index a2cf2d5..d16b3c1 100644
--- a/quilt/mail.in
+++ b/quilt/mail.in
@@ -350,6 +350,7 @@ then
if [ -z "$subject" ]
then
+ rm -rf $tmpdir
return 1
fi
--
cgit v0.8.3.4

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:164ed5511aa1910625cfd42df7f7163b235bb05d02779811a20deb96c7d3ebe6
size 378408

3
quilt-0.50.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1cdb5480856db1c06e386fe89ca24a6333a010bcd2641e3af35fd5e91b5e4f3a
size 395273

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Tue Dec 6 14:24:24 CET 2011 - jdelvare@suse.de
- update to 0.50
o Obsoletes fix-test-create-delete.diff.
o Obsoletes hide-git-desc-error.diff.
o Obsoletes mail-dont-use-equal-tilde.diff.
o Obsoletes revert-should-not-hard-link.diff.
o Obsoletes fix-fr-import-message.diff.
o Obsoletes lzma-xz-support.patch, except expand part which was
merged in expand.diff.
o Obsoletes inspect-lzma-xz.patch.
o Obsoletes fix-patch-version-detection.patch.
o Obsoletes setup-add-fuzz-parameter.patch.
o Obsoletes setup-support-reverse-patch.patch.
o Obsoletes completion-revert.patch.
o Obsoletes inspect-shell-syntax-errors.patch.
o Obsoletes mail-fix-a-temporary-directory-leak.patch.
o Too many upstream changes in 34 months to list.
- Add missing requires: findutils.
- Add recommends: xz.
-------------------------------------------------------------------
Thu Dec 1 16:23:20 CET 2011 - jdelvare@suse.de

View File

@ -23,33 +23,23 @@ BuildRequires: diffstat ed emacs-nox procmail
Summary: A Tool for Working with Many Patches
License: GPLv2+
Group: Productivity/Text/Utilities
Version: 0.48
Release: 13
Requires: coreutils diffutils patch gzip bzip2 perl mktemp diffstat file
Version: 0.50
Release: 1
Requires: coreutils diffutils findutils patch gzip bzip2 perl mktemp diffstat file
%if %{suse_version} > 910
Recommends: procmail
%endif
%if %{suse_version} > 1120
Recommends: xz
%endif
AutoReqProv: off
Source: %{name}-%{version}.tar.bz2
Source1: suse-start-quilt-mode.el
Patch1: expand.diff
Patch2: docdir.diff
Patch3: patch-wrapper-rpm.diff
Patch4: fix-test-create-delete.diff
Patch5: hide-git-desc-error.diff
Patch6: mail-dont-use-equal-tilde.diff
Patch7: revert-should-not-hard-link.diff
Patch8: fix-fr-import-message.diff
Patch9: lzma-xz-support.patch
Patch10: inspect-lzma-xz.patch
Patch11: fix-patch-version-detection.patch
Patch12: setup-add-fuzz-parameter.patch
Patch13: setup-support-reverse-patch.patch
Patch14: completion-revert.patch
Patch15: inspect-shell-syntax-errors.patch
Patch16: grep-support-spaces.patch
Patch17: mail-fix-a-temporary-directory-leak.patch
Patch18: suse-workaround-pseudo-release.patch
Patch4: grep-support-spaces.patch
Patch5: suse-workaround-pseudo-release.patch
Url: http://savannah.nongnu.org/projects/quilt
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -69,7 +59,11 @@ Authors:
%prep
%setup -q
%patch -p1 -P 1 -P 2 -P 3 -P 4 -P 5 -P 6 -P 7 -P 8 -P 9 -P 10 -P 11 -P 12 -P 13 -P 14 -P 15 -P 16 -P 17 -P 18
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
autoconf

View File

@ -1,74 +0,0 @@
From: Jean Delvare <jdelvare@suse.de>
References: http://savannah.nongnu.org/bugs/index.php?25305
"quilt revert" accidentally creates a hard link, it shouldn't do that.
I think the reason is that apply_patch_temporarily() uses backup-files
to create the temporary files, and by default backup-files uses hard
links. For files which are modified by the patch, this isn't a problem
because patch will unlink the file before modifying it. But for files
which are not modified by the patch, the hard link is preserved.
Then quilt revert also makes a hard link to restore the file, on the
assumption that the temporary copy will be deleted right away. At
this point, files not modified by the patch will have a link count
of 3 (.pc/<patch>/<file>, d.*/<file> and <file>). When the temporary
file is deleted, the link count is still 2 (.pc/<patch>/<file> and
<file>).
A simple way to fix this is to always use cp instead of ln when
restoring the files. Performance is not as good, but at least it is
always correct. We could optimize the code to use ln when possible
and cp for the other cases, but honestly I don't think it is worth
the extra complexity. The speed of "quilt revert" is hardly
critical, given how infrequently this command is used.
---
quilt/revert.in | 1 -
test/nolink.test | 20 ++++++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
--- quilt-git.orig/test/nolink.test 2009-06-11 08:41:42.000000000 +0200
+++ quilt-git/test/nolink.test 2009-06-11 09:46:24.000000000 +0200
@@ -2,6 +2,7 @@
$ mkdir -p d/patches
$ cd d
+# quilt should preserve hard links and not create new ones
$ echo foo > foo
$ ln foo foo2
$ ls -l foo | awk '{ print $2 }'
@@ -53,5 +54,24 @@
$ ls -l foo | awk '{ print $2 }'
> 2
+# quilt revert should not create hard links
+ $ echo bar > bar
+ $ quilt push -q
+ > Applying patch patches/test.diff
+ > Now at patch patches/test.diff
+
+ $ quilt add bar
+ > File bar added to patch patches/test.diff
+ $ echo "bar changed" > bar
+ $ quilt revert bar
+ > Changes to bar in patch patches/test.diff reverted
+
+ $ ls -l bar | awk '{ print $2 }'
+ > 1
+
+ $ quilt pop -q
+ > Removing patch patches/test.diff
+ > No patches applied
+
$ cd ..
$ rm -rf d
--- quilt-git.orig/quilt/revert.in 2009-06-11 09:05:27.000000000 +0200
+++ quilt-git/quilt/revert.in 2009-06-11 09:05:44.000000000 +0200
@@ -104,7 +104,6 @@ do
fi
mkdir -p "$(dirname "$file")"
- ln -f "$workdir/$file" "$file" 2>&1 ||
cp -p "$workdir/$file" "$file"
else
if [ ! -e "$file" ]

View File

@ -1,97 +0,0 @@
From: Jean Delvare <jdelvare@suse.de>
Subject: Add a --fuzz parameter to quilt setup and inspect
References: bnc#615073
Let quilt setup and inspect overrule the _default_patch_fuzz
setting of rpmbuild, by adding a --fuzz option to both. This is
particularly useful when working on an old source tree with a
recent version of patch which defaults to fuzz 0.
---
quilt/scripts/inspect.in | 9 +++++++--
quilt/setup.in | 12 +++++++++---
2 files changed, 16 insertions(+), 5 deletions(-)
--- quilt-0.48.orig/quilt/scripts/inspect.in
+++ quilt-0.48/quilt/scripts/inspect.in
@@ -17,11 +17,11 @@ fi
cd ${SUBDIR:-.}
usage() {
- echo "Usage: ${0##*/} specfile"
+ echo "Usage: ${0##*/} [--fuzz=N] specfile"
exit 1
}
-options=$(getopt -o v --long sourcedir: -n "${0##*/}" -- "$@") || exit
+options=$(getopt -o v --long sourcedir:,fuzz: -n "${0##*/}" -- "$@") || exit
eval set -- "$options"
@@ -36,6 +36,10 @@ do
--sourcedir)
sourcedir=${2%/}/
shift 2 ;;
+ --fuzz)
+ # Only works with rpm 4.6 and later
+ DEFINE_FUZZ="%define _default_patch_fuzz $2"
+ shift 2 ;;
--)
shift
break ;;
@@ -269,6 +273,7 @@ rpmbuild --eval "%define _sourcedir $sou
--eval "%define _builddir $tmpdir/build" \
--eval "%define __patch $tmpdir/bin/patch" \
--eval "%define __tar $tmpdir/bin/tar" \
+ --eval "$DEFINE_FUZZ" \
--nodeps \
-bp "$specdir/$specfile" < /dev/null >&2
status=$?
--- quilt-0.48.orig/quilt/setup.in
+++ quilt-0.48/quilt/setup.in
@@ -72,7 +72,7 @@ create_symlink() {
usage()
{
- printf $"Usage: quilt setup [-d path-prefix] [-v] [--sourcedir dir] {specfile|seriesfile}\n"
+ printf $"Usage: quilt setup [-d path-prefix] [-v] [--sourcedir dir] [--fuzz=N] {specfile|seriesfile}\n"
if [ x$1 = x-h ]
then
printf $"
@@ -84,6 +84,9 @@ Initializes a source tree from an rpm sp
Directory that contains the package sources. Defaults to \`.'.
-v Verbose debug output.
+
+--fuzz=N
+ Set the maximum fuzz factor (needs rpm 4.6 or later).
"
exit 0
else
@@ -91,7 +94,7 @@ Initializes a source tree from an rpm sp
fi
}
-options=`getopt -o d:vh --long sourcedir: -- "$@"`
+options=`getopt -o d:vh --long sourcedir:,fuzz: -- "$@"`
if [ $? -ne 0 ]
then
@@ -117,6 +120,9 @@ do
--sourcedir)
sourcedir=${2%/}/
shift 2 ;;
+ --fuzz)
+ opt_fuzz="--fuzz $2"
+ shift 2 ;;
--)
shift
break ;;
@@ -137,7 +143,7 @@ case "$1" in
*.spec)
spec_file=$1
- if ! $QUILT_DIR/scripts/inspect $verbose $opt_sourcedir \
+ if ! $QUILT_DIR/scripts/inspect $verbose $opt_sourcedir $opt_fuzz \
"$spec_file" 2>&1 > $tmpfile
then
printf $"The %%prep section of %s failed; results may be incomplete\n" "$spec_file"

View File

@ -1,40 +0,0 @@
From: Jean Delvare <jdelvare@suse.de>
Subject: Handle reverted patches in spec files
References: bnc#615065
Let inspect (and thus quilt setup) handle reversed patches
in spec files.
---
quilt/scripts/inspect.in | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
--- quilt-0.48.orig/quilt/scripts/inspect.in
+++ quilt-0.48/quilt/scripts/inspect.in
@@ -185,6 +185,18 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
fi
}
+ # Extract the -R option from the command line
+ reverse_option() {
+ while [ $# -ne 0 -a "$1" != -R ]
+ do
+ shift
+ done
+ if [ "$1" = -R ]
+ then
+ echo $1
+ fi
+ }
+
patch_input_file() {
while [ $# -gt 0 ]; do
case "$1" in
@@ -244,7 +256,7 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
patch)
echo -n p >&4
echo "${0##*/} ${dir:-.} $unpackfile" \
- $(strip_option "$@") >&3
+ $(strip_option "$@") $(reverse_option "$@") >&3
;;
tar)
echo -n t >&4