aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJussi Kukkonen <jussi.kukkonen@intel.com>2017-03-30 19:49:28 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-04-05 12:36:45 +0100
commit4b667d268fe410a21cacaecd1b5e3bfbbe7d53d8 (patch)
tree48e52a366206b7bcd5359037a501b073fd327112
parentf0425c0a0f1c98f65bf61fd9aa7e023ed41a35fa (diff)
downloadopenembedded-core-contrib-4b667d268fe410a21cacaecd1b5e3bfbbe7d53d8.tar.gz
quilt: Fix paths for patch and perl
Currently some shebang lines end up as #! /usr/bin/env perl -w env does not like the argument. Also the current sed to insert env does not cover the copies ptests use. Fix these issues by: - using --with-perl to insert "env" - Replacing "-w" in shebang lines with a new "use warning;" line Remove a EXTRA_OECONF_append_class_target from the native recipe. Don't overwrite EXTRA_OECONF in native: the values should be correct for native as well. --with-patch is used within the gnu patch wrapper only: before this commit the wrapper contained a (build host) path to native patch. Also tweak one test so busybox mv output is accepted. All ptests should now pass: Fixes [YOCTO #11221]. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/recipes-devtools/quilt/quilt-native.inc3
-rw-r--r--meta/recipes-devtools/quilt/quilt.inc9
-rw-r--r--meta/recipes-devtools/quilt/quilt/0001-tests-Allow-different-output-from-mv.patch29
-rw-r--r--meta/recipes-devtools/quilt/quilt_0.65.bb10
4 files changed, 38 insertions, 13 deletions
diff --git a/meta/recipes-devtools/quilt/quilt-native.inc b/meta/recipes-devtools/quilt/quilt-native.inc
index fce5fa1888..c7067042e6 100644
--- a/meta/recipes-devtools/quilt/quilt-native.inc
+++ b/meta/recipes-devtools/quilt/quilt-native.inc
@@ -5,8 +5,7 @@ INHIBIT_AUTOTOOLS_DEPS = "1"
inherit native
PATCHTOOL = "patch"
-EXTRA_OECONF = "--disable-nls"
-EXTRA_OECONF_append_class-target = "--with-perl=perl"
+EXTRA_OECONF_append = " --disable-nls"
do_configure () {
oe_runconf
diff --git a/meta/recipes-devtools/quilt/quilt.inc b/meta/recipes-devtools/quilt/quilt.inc
index 57e2a14a4a..c7bb741b4c 100644
--- a/meta/recipes-devtools/quilt/quilt.inc
+++ b/meta/recipes-devtools/quilt/quilt.inc
@@ -8,6 +8,7 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/quilt/quilt-${PV}.tar.gz \
file://run-ptest \
file://Makefile \
file://test.sh \
+ file://0001-tests-Allow-different-output-from-mv.patch \
"
SRC_URI[md5sum] = "c67ba0228f5b7b8bbe469474661f92d6"
@@ -33,10 +34,16 @@ RDEPENDS_${PN} = "bash"
EXTRA_OE_MAKE_ARGS_darwin ?= ""
EXTRA_OE_MAKE_ARGS ?= "BUILD_ROOT=${D}"
-EXTRA_OECONF = "--with-perl=perl"
+EXTRA_OECONF = "--with-perl='${USRBINPATH}/env perl' --with-patch=patch"
CACHED_CONFIGUREVARS += "ac_cv_path_BASH=/bin/bash"
+# Make sure we don't have "-w" in shebang lines: it breaks using
+# "/usr/bin/env perl" as parser
+do_configure_prepend () {
+ find ${S} -name "*.in" -exec sed -i -e "1s,^#\!.*@PERL@ -w$,#\! @PERL@\nuse warnings;," {} \;
+}
+
# Don't setup symlinks to host utilities, we don't need them
do_configure_append () {
sed -e 's,^COMPAT_SYMLINKS.*:=.*,COMPAT_SYMLINKS :=,' -i ${S}/Makefile
diff --git a/meta/recipes-devtools/quilt/quilt/0001-tests-Allow-different-output-from-mv.patch b/meta/recipes-devtools/quilt/quilt/0001-tests-Allow-different-output-from-mv.patch
new file mode 100644
index 0000000000..21219a0bba
--- /dev/null
+++ b/meta/recipes-devtools/quilt/quilt/0001-tests-Allow-different-output-from-mv.patch
@@ -0,0 +1,29 @@
+From 1530138960cfafbeefb95f2a760954c00b4d0ef0 Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Wed, 29 Mar 2017 15:11:59 +0300
+Subject: [PATCH] tests: Allow different output from mv
+
+busybox mv has different error messages: fix the test
+
+Upstream-Status: Inappropriate [embedded]
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+---
+ test/failbackup.test | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/failbackup.test b/test/failbackup.test
+index 37046f7..fce6725 100644
+--- a/test/failbackup.test
++++ b/test/failbackup.test
+@@ -16,7 +16,7 @@ What happens when refresh fails because of a permission error?
+ $ cat > test.txt
+ < This is updated test.txt.
+ $ quilt refresh --backup
+- >~ mv: cannot move [`']?%{P}test.diff'? to [`']?%{P}test.diff~'?: Permission denied
++ >~ mv: .*: Permission denied
+ $ echo %{?}
+ > 1
+
+--
+2.1.4
+
diff --git a/meta/recipes-devtools/quilt/quilt_0.65.bb b/meta/recipes-devtools/quilt/quilt_0.65.bb
index 00f900a112..12859f0bcc 100644
--- a/meta/recipes-devtools/quilt/quilt_0.65.bb
+++ b/meta/recipes-devtools/quilt/quilt_0.65.bb
@@ -4,13 +4,3 @@ RDEPENDS_${PN} += "patch diffstat bzip2 util-linux"
SRC_URI += "file://aclocal.patch \
file://gnu_patch_test_fix_target.patch \
"
-
-# fix build-distro specific perl path in the target perl scripts
-do_install_append() {
- for perlscript in ${D}${datadir}/quilt/scripts/remove-trailing-ws ${D}${datadir}/quilt/scripts/dependency-graph ${D}${datadir}/quilt/scripts/edmail ${D}${bindir}/guards
- do
- if [ -f $perlscript ]; then
- sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' $perlscript
- fi
- done
-}