Patchwork net-tools: Fix do_patch to be re-executable

login
register
mail settings
Submitter Richard Purdie
Date April 15, 2012, 4:06 p.m.
Message ID <1334506007.16992.33.camel@ted>
Download mbox | patch
Permalink /patch/25875/
State Accepted
Commit 1cfddb17e0c2576e55f62c10612e7cbd73e5ac5e
Headers show

Comments

Richard Purdie - April 15, 2012, 4:06 p.m.
This recipe's do_patch was not able to be re-executed due to its custom
patching functions. This fixes things so that it can be re-executed.

It also fixes the unpack task re-execution by ensuring ${S} is clean
before the unpack starts.

[YOCTO #2194]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---

Patch

diff --git a/meta/recipes-extended/net-tools/net-tools_1.60-23.bb
b/meta/recipes-extended/net-tools/net-tools_1.60-23.bb
index 213fb60..c8d2c57 100644
--- a/meta/recipes-extended/net-tools/net-tools_1.60-23.bb
+++ b/meta/recipes-extended/net-tools/net-tools_1.60-23.bb
@@ -31,11 +31,19 @@  PARALLEL_MAKE = ""
 # up all previously applied patches in the start
 nettools_do_patch() {
 	cd ${S}
-	patch -p1 < ${WORKDIR}/${BPN}_${PV}.diff
+	quilt pop -a || true
+	if [ -d ${S}/.pc-nettools ]; then
+		mv ${S}/.pc-nettools ${S}/.pc
+		QUILT_PATCHES=${S}/debian/patches quilt pop -a
+		rm -rf ${S}/.pc ${S}/debian
+	fi
+	patch -p1 < ${WORKDIR}/${BPN}_${PV}.diff	
 	QUILT_PATCHES=${S}/debian/patches quilt push -a
-	rm -rf ${S}/patches ${S}/.pc
+	mv ${S}/.pc ${S}/.pc-nettools
 }
 
+do_unpack[cleandirs] += "${S}"
+
 # We invoke base do_patch at end, to incorporate any local patch
 python do_patch() {
 	bb.build.exec_func('nettools_do_patch', d)