mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 12:29:55 +00:00
quilt: 0.67 -> 0.68
* Remove backported patches: fix-grep-3.8.patch. faildiff-order.patch 0001-test-Fix-a-race-condition-in-merge.test.patch * Add coreutils to RDEPENDS:quilt-ptest to fix ptest error: $ ln -P ln: invalid option -- 'P' The busybox' ln doesn't have option '-P', so use coreutils to fix it. (From OE-Core rev: 9a0a684bb470aad2f1c44d0f1f84cb33910d5189) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
5a5e22f078
commit
b6362a9fe6
@@ -11,14 +11,11 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/quilt/quilt-${PV}.tar.gz \
|
|||||||
file://run-ptest \
|
file://run-ptest \
|
||||||
file://test.sh \
|
file://test.sh \
|
||||||
file://0001-tests-Allow-different-output-from-mv.patch \
|
file://0001-tests-Allow-different-output-from-mv.patch \
|
||||||
file://fix-grep-3.8.patch \
|
|
||||||
file://faildiff-order.patch \
|
|
||||||
file://0001-test-Fix-a-race-condition-in-merge.test.patch \
|
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI:append:class-target = " file://gnu_patch_test_fix_target.patch"
|
SRC_URI:append:class-target = " file://gnu_patch_test_fix_target.patch"
|
||||||
|
|
||||||
SRC_URI[sha256sum] = "3be3be0987e72a6c364678bb827e3e1fcc10322b56bc5f02b576698f55013cc2"
|
SRC_URI[sha256sum] = "fe8c09de03c106e85b3737c8f03ade147c956b79ed7af485a1c8a3858db38426"
|
||||||
|
|
||||||
inherit autotools-brokensep ptest
|
inherit autotools-brokensep ptest
|
||||||
|
|
||||||
@@ -97,5 +94,5 @@ RDEPENDS:${PN}-ptest += "file sed gawk diffutils findutils ed perl \
|
|||||||
perl-module-filehandle perl-module-getopt-std \
|
perl-module-filehandle perl-module-getopt-std \
|
||||||
perl-module-posix perl-module-file-temp \
|
perl-module-posix perl-module-file-temp \
|
||||||
perl-module-text-parsewords perl-module-overloading \
|
perl-module-text-parsewords perl-module-overloading \
|
||||||
bash util-linux-getopt ptest-runner \
|
bash util-linux-getopt ptest-runner coreutils \
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -1,48 +0,0 @@
|
|||||||
From c1ce964f3e9312100a60f03c1e1fdd601e1911f2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
|
|
||||||
<congdanhqx@gmail.com>
|
|
||||||
Date: Tue, 28 Feb 2023 18:45:15 +0100
|
|
||||||
Subject: [PATCH] test: Fix a race condition in merge.test
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Just like commit 4dfe7f9, (test: Fix a race condition, 2023-01-20),
|
|
||||||
this fix a test race when stdout and stderr in any order.
|
|
||||||
|
|
||||||
Upstream-Status: Backport [https://git.savannah.nongnu.org/cgit/quilt.git/commit/?id=c1ce964f3e9312100a60f03c1e1fdd601e1911f2]
|
|
||||||
Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
|
|
||||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
|
||||||
---
|
|
||||||
test/merge.test | 6 ++++--
|
|
||||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/test/merge.test b/test/merge.test
|
|
||||||
index c64b33d..2e67d4f 100644
|
|
||||||
--- a/test/merge.test
|
|
||||||
+++ b/test/merge.test
|
|
||||||
@@ -39,8 +39,9 @@ Test the patch merging functionality of `quilt diff'.
|
|
||||||
> Applying patch %{P}c.diff
|
|
||||||
> Now at patch %{P}c.diff
|
|
||||||
|
|
||||||
- $ quilt diff -P b.diff | grep -v "^\\(---\\|+++\\)"
|
|
||||||
+ $ quilt diff -P b.diff >/dev/null
|
|
||||||
> Warning: more recent patches modify files in patch %{P}b.diff
|
|
||||||
+ $ quilt diff -P b.diff 2>/dev/null | grep -v "^\\(---\\|+++\\)"
|
|
||||||
>~ Index: [^/]+/abc\.txt
|
|
||||||
> ===================================================================
|
|
||||||
> @@ -1,3 +1,3 @@
|
|
||||||
@@ -49,8 +50,9 @@ Test the patch merging functionality of `quilt diff'.
|
|
||||||
> +b+
|
|
||||||
> c
|
|
||||||
|
|
||||||
- $ quilt diff --combine a.diff -P b.diff | grep -v "^\\(---\\|+++\\)"
|
|
||||||
+ $ quilt diff --combine a.diff -P b.diff >/dev/null
|
|
||||||
> Warning: more recent patches modify files in patch %{P}b.diff
|
|
||||||
+ $ quilt diff --combine a.diff -P b.diff 2>/dev/null | grep -v "^\\(---\\|+++\\)"
|
|
||||||
>~ Index: [^/]+/abc\.txt
|
|
||||||
> ===================================================================
|
|
||||||
> @@ -1,3 +1,3 @@
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
Upstream-Status: Backport
|
|
||||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
|
||||||
|
|
||||||
From 4dfe7f9e702c85243a71e4de267a13e434b6d6c2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jean Delvare <jdelvare@suse.de>
|
|
||||||
Date: Fri, 20 Jan 2023 12:56:08 +0100
|
|
||||||
Subject: [PATCH] test: Fix a race condition
|
|
||||||
|
|
||||||
The test suite does not differentiate between stdout and stderr. When
|
|
||||||
messages are printed to both, the order in which they will reach us
|
|
||||||
is apparently not guaranteed. Ideally this would be deterministic, but
|
|
||||||
until then, explicitly test stdout and stderr separately in the test
|
|
||||||
case itself. Otherwise the test suite fails randomly, which is a pain
|
|
||||||
for distribution package maintainers.
|
|
||||||
|
|
||||||
This fixes bug #63651 reported by Ross Burton:
|
|
||||||
https://savannah.nongnu.org/bugs/index.php?63651
|
|
||||||
|
|
||||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
|
||||||
---
|
|
||||||
test/faildiff.test | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/test/faildiff.test b/test/faildiff.test
|
|
||||||
index 5afb8e3..0444c15 100644
|
|
||||||
--- a/test/faildiff.test
|
|
||||||
+++ b/test/faildiff.test
|
|
||||||
@@ -27,8 +27,9 @@ What happens on binary files?
|
|
||||||
> File test.bin added to patch %{P}test.diff
|
|
||||||
|
|
||||||
$ printf "\\003\\000\\001" > test.bin
|
|
||||||
- $ quilt diff -pab --no-index
|
|
||||||
+ $ quilt diff -pab --no-index 2>/dev/null
|
|
||||||
>~ (Files|Binary files) a/test\.bin and b/test\.bin differ
|
|
||||||
+ $ quilt diff -pab --no-index >/dev/null
|
|
||||||
> Diff failed on file 'test.bin', aborting
|
|
||||||
$ echo %{?}
|
|
||||||
> 1
|
|
||||||
--
|
|
||||||
2.34.1
|
|
||||||
|
|
||||||
@@ -1,144 +0,0 @@
|
|||||||
From f73f8d7f71de2878d3f92881a5fcb8eafd78cb5f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jean Delvare <jdelvare@suse.de>
|
|
||||||
Date: Fri, 9 Sep 2022 10:10:37 +0200
|
|
||||||
Subject: Avoid warnings with grep 3.8
|
|
||||||
|
|
||||||
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>
|
|
||||||
Upstream-Status: Backport [https://git.savannah.nongnu.org/cgit/quilt.git/commit/?id=f73f8d7f71de2878d3f92881a5fcb8eafd78cb5f]
|
|
||||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
|
||||||
---
|
|
||||||
quilt/diff.in | 2 +-
|
|
||||||
quilt/patches.in | 2 +-
|
|
||||||
quilt/scripts/patchfns.in | 20 +++++++++++++-------
|
|
||||||
quilt/upgrade.in | 4 ++--
|
|
||||||
4 files changed, 17 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/quilt/diff.in b/quilt/diff.in
|
|
||||||
index e90dc33..07788ff 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 bb17a46..eac45a9 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 c2d5f9d..1bd7233 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 dbf7d05..866aa33 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 \
|
|
||||||
--
|
|
||||||
cgit v1.1
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user