forked from pool/quilt
Accepting request 1002352 from devel:tools:scm
OBS-URL: https://build.opensuse.org/request/show/1002352 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/quilt?expand=0&rev=74
This commit is contained in:
commit
42b486edb7
135
avoid-warnings-with-grep-3.8.patch
Normal file
135
avoid-warnings-with-grep-3.8.patch
Normal file
@ -0,0 +1,135 @@
|
||||
From: Jean Delvare <jdelvare@suse.de>
|
||||
Date: Fri, 9 Sep 2022 10:10:37 +0200
|
||||
Subject: Avoid warnings with grep 3.8
|
||||
Patch-mainline: yes
|
||||
Git-commit: f73f8d7f71de2878d3f92881a5fcb8eafd78cb5f
|
||||
References: boo#1203230
|
||||
|
||||
GNU grep version 3.8 became more strict about needless quoting in
|
||||
patterns. We have one occurrence of that in quilt, where "/"
|
||||
characters are being quoted by default. There are cases where they
|
||||
indeed need to be quoted (typically when used in a sed s/// command)
|
||||
but most of the time they do not, and this results in the following
|
||||
warning:
|
||||
|
||||
grep: warning: stray \ before /
|
||||
|
||||
So rename quote_bre() to quote_sed_re(), and introduce
|
||||
quote_grep_re() which does not quote "/".
|
||||
|
||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
||||
|
||||
diff --git a/quilt/diff.in b/quilt/diff.in
|
||||
index e90dc33db36a..07788ffc5e75 100644
|
||||
--- a/quilt/diff.in
|
||||
+++ b/quilt/diff.in
|
||||
@@ -255,7 +255,7 @@ then
|
||||
# Add all files in the snapshot into the file list (they may all
|
||||
# have changed).
|
||||
files=( $(find $QUILT_PC/$snap_subdir -type f \
|
||||
- | sed -e "s/^$(quote_bre $QUILT_PC/$snap_subdir/)//" \
|
||||
+ | sed -e "s/^$(quote_sed_re $QUILT_PC/$snap_subdir/)//" \
|
||||
| sort) )
|
||||
printf "%s\n" "${files[@]}" >&4
|
||||
unset files
|
||||
diff --git a/quilt/patches.in b/quilt/patches.in
|
||||
index bb17a463a613..eac45a9c9635 100644
|
||||
--- a/quilt/patches.in
|
||||
+++ b/quilt/patches.in
|
||||
@@ -60,7 +60,7 @@ scan_unapplied()
|
||||
# Quote each file name only once
|
||||
for file in "${opt_files[@]}"
|
||||
do
|
||||
- files_bre[${#files_bre[@]}]=$(quote_bre "$file")
|
||||
+ files_bre[${#files_bre[@]}]=$(quote_grep_re "$file")
|
||||
done
|
||||
|
||||
# "Or" all files in a single pattern
|
||||
diff --git a/quilt/scripts/patchfns.in b/quilt/scripts/patchfns.in
|
||||
index c2d5f9dbe946..1bd723315e2c 100644
|
||||
--- a/quilt/scripts/patchfns.in
|
||||
+++ b/quilt/scripts/patchfns.in
|
||||
@@ -78,8 +78,14 @@ array_join()
|
||||
done
|
||||
}
|
||||
|
||||
-# Quote a string for use in a basic regular expression.
|
||||
-quote_bre()
|
||||
+# Quote a string for use in a regular expression for a grep pattern.
|
||||
+quote_grep_re()
|
||||
+{
|
||||
+ echo "$1" | sed -e 's:\([][^$.*\\]\):\\\1:g'
|
||||
+}
|
||||
+
|
||||
+# Quote a string for use in a regular expression for a sed s/// command.
|
||||
+quote_sed_re()
|
||||
{
|
||||
echo "$1" | sed -e 's:\([][^$/.*\\]\):\\\1:g'
|
||||
}
|
||||
@@ -215,7 +221,7 @@ patch_in_series()
|
||||
|
||||
if [ -e "$SERIES" ]
|
||||
then
|
||||
- grep -q "^$(quote_bre $patch)\([ \t]\|$\)" "$SERIES"
|
||||
+ grep -q "^$(quote_grep_re $patch)\([ \t]\|$\)" "$SERIES"
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
@@ -365,7 +371,7 @@ is_applied()
|
||||
{
|
||||
local patch=$1
|
||||
[ -e $DB ] || return 1
|
||||
- grep -q "^$(quote_bre $patch)\$" $DB
|
||||
+ grep -q "^$(quote_grep_re $patch)\$" $DB
|
||||
}
|
||||
|
||||
applied_patches()
|
||||
@@ -465,7 +471,7 @@ remove_from_db()
|
||||
local tmpfile
|
||||
if tmpfile=$(gen_tempfile)
|
||||
then
|
||||
- grep -v "^$(quote_bre $patch)\$" $DB > $tmpfile
|
||||
+ grep -v "^$(quote_grep_re $patch)\$" $DB > $tmpfile
|
||||
cat $tmpfile > $DB
|
||||
rm -f $tmpfile
|
||||
[ -s $DB ] || rm -f $DB
|
||||
@@ -520,7 +526,7 @@ find_patch()
|
||||
fi
|
||||
|
||||
local patch=${1#$SUBDIR_DOWN$QUILT_PATCHES/}
|
||||
- local bre=$(quote_bre "$patch")
|
||||
+ local bre=$(quote_sed_re "$patch")
|
||||
set -- $(sed -e "/^$bre\(\|\.patch\|\.diff\?\)\(\|\.gz\|\.bz2\|\.xz\|\.lzma\|\.lz\)\([ "$'\t'"]\|$\)/!d" \
|
||||
-e 's/[ '$'\t''].*//' "$SERIES")
|
||||
if [ $# -eq 1 ]
|
||||
@@ -631,7 +637,7 @@ files_in_patch()
|
||||
then
|
||||
find "$path" -type f \
|
||||
-a ! -path "$(quote_glob "$path")/.timestamp" |
|
||||
- sed -e "s/$(quote_bre "$path")\///"
|
||||
+ sed -e "s/$(quote_sed_re "$path")\///"
|
||||
fi
|
||||
}
|
||||
|
||||
diff --git a/quilt/upgrade.in b/quilt/upgrade.in
|
||||
index dbf7d05bd2b7..866aa339d41e 100644
|
||||
--- a/quilt/upgrade.in
|
||||
+++ b/quilt/upgrade.in
|
||||
@@ -74,7 +74,7 @@ printf $"Converting meta-data to version %s\n" "$DB_VERSION"
|
||||
|
||||
for patch in $(applied_patches)
|
||||
do
|
||||
- proper_name="$(grep "^$(quote_bre $patch)"'\(\|\.patch\|\.diff?\)\(\|\.gz\|\.bz2\)\([ \t]\|$\)' $SERIES)"
|
||||
+ proper_name="$(grep "^$(quote_grep_re $patch)"'\(\|\.patch\|\.diff?\)\(\|\.gz\|\.bz2\)\([ \t]\|$\)' $SERIES)"
|
||||
proper_name=${proper_name#$QUILT_PATCHES/}
|
||||
proper_name=${proper_name%% *}
|
||||
if [ -z "$proper_name" ]
|
||||
@@ -84,7 +84,7 @@ do
|
||||
fi
|
||||
|
||||
if [ "$patch" != "$proper_name" -a -d $QUILT_PC/$patch ] \
|
||||
- && grep -q "^$(quote_bre $patch)\$" \
|
||||
+ && grep -q "^$(quote_grep_re $patch)\$" \
|
||||
$QUILT_PC/applied-patches
|
||||
then
|
||||
mv $QUILT_PC/$patch $QUILT_PC/$proper_name \
|
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 9 08:18:31 UTC 2022 - Jean Delvare <jdelvare@suse.com>
|
||||
|
||||
- avoid-warnings-with-grep-3.8.patch: Avoid warnings with grep
|
||||
3.8. GNU grep version 3.8 became more strict about needless
|
||||
quoting in patterns. There was an occurrence of that in quilt,
|
||||
which broke the test suite (boo#1203230).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 15 14:07:30 UTC 2022 - Jean Delvare <jdelvare@suse.com>
|
||||
|
||||
|
16
quilt.spec
16
quilt.spec
@ -38,10 +38,11 @@ Requires: perl
|
||||
URL: http://savannah.nongnu.org/projects/quilt
|
||||
Source: %{name}-%{version}.tar.bz2
|
||||
Source1: suse-start-quilt-mode.el
|
||||
Patch1: expand.diff
|
||||
Patch2: quilt-support-vimdiff.patch
|
||||
Patch3: test-faildiff-workaround-order-bug.patch
|
||||
Patch4: suse-workaround-pseudo-release.patch
|
||||
Patch1: avoid-warnings-with-grep-3.8.patch
|
||||
Patch81: expand.diff
|
||||
Patch82: quilt-support-vimdiff.patch
|
||||
Patch83: test-faildiff-workaround-order-bug.patch
|
||||
Patch84: suse-workaround-pseudo-release.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildArch: noarch
|
||||
%if 0%{?suse_version}
|
||||
@ -62,9 +63,10 @@ un-applied, refreshed, and more.
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch81 -p1
|
||||
%patch82 -p1
|
||||
%patch83 -p1
|
||||
%patch84 -p1
|
||||
|
||||
%build
|
||||
# --with-rpmbuild=/usr/lib/rpm/rpmb:
|
||||
|
Loading…
Reference in New Issue
Block a user