[oe-commits] Enrico Scholz : base.bbclass: fixed 'apply=no' behavior

git version control git at git.openembedded.org
Thu May 27 19:56:56 UTC 2010


Module: openembedded.git
Branch: org.openembedded.dev
Commit: eb8ad2af3a59dc7b4c64814815fc13977efaec6b
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=eb8ad2af3a59dc7b4c64814815fc13977efaec6b

Author: Enrico Scholz <enrico.scholz at sigma-chemnitz.de>
Date:   Thu May 27 02:41:10 2010 +0000

base.bbclass: fixed 'apply=no' behavior

After the recent change to autodetect patchfiles in SRC_URI's, files
with 'apply=no' were not copied to workdir anymore.  This broke e.g.
dropbear which marks a patch as 'apply=no' and applies it manually.

This patch evaluates content of 'apply' parameter and copies files to
workdir when it is not a patch or the parameter is false.

Slightly altered to use oe.utils -kergoth

Signed-off-by: Enrico Scholz <enrico.scholz at sigma-chemnitz.de>
Signed-off-by: Chris Larson <chris_larson at mentor.com>

---

 classes/base.bbclass |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/classes/base.bbclass b/classes/base.bbclass
index 8bac509..a36fcbf 100644
--- a/classes/base.bbclass
+++ b/classes/base.bbclass
@@ -163,6 +163,7 @@ python base_do_fetch() {
 
 def oe_unpack_file(file, data, url = None):
 	import subprocess
+	import oe.utils
 	if not url:
 		url = "file://%s" % file
 	dots = file.split(".")
@@ -207,7 +208,9 @@ def oe_unpack_file(file, data, url = None):
 		cmd = 'cp -pPR %s %s/%s/' % (file, os.getcwd(), destdir)
 	else:
 		(type, host, path, user, pswd, parm) = bb.decodeurl(url)
-		if not 'apply' in parm and not 'patch' in parm:
+		is_patch = path.endswith('.diff') or path.endswith('.patch')
+		if not oe.utils.param_bool(parm, 'apply', is_patch) and \
+		   not oe.utils.param_bool(parm, 'patch', False):
 			# The "destdir" handling was specifically done for FILESPATH
 			# items.  So, only do so for file:// entries.
 			if type == "file":





More information about the Openembedded-commits mailing list