]> code.ossystems Code Review - openembedded-core.git/commitdiff
base: improve do_unpack[cleandirs] logic
authorRoss Burton <ross.burton@intel.com>
Wed, 25 Apr 2018 13:57:29 +0000 (14:57 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 11 May 2018 06:49:31 +0000 (07:49 +0100)
If a recipe sets S to ${WORKDIR}/ then the S != WORKDIR test doesn't work as
expected.  Use os.path.normpath() to normalise the paths so string comparison
works.

Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/base.bbclass

index bb1f4b753365b53e2935e90d37d9e1374a7dff33..d5798f9c48ce156f1908fe5c8358bbd1ae8c153f 100644 (file)
@@ -152,7 +152,7 @@ python base_do_fetch() {
 addtask unpack after do_fetch
 do_unpack[dirs] = "${WORKDIR}"
 
-do_unpack[cleandirs] = "${@d.getVar('S') if d.getVar('S') != d.getVar('WORKDIR') else os.path.join('${S}', 'patches')}"
+do_unpack[cleandirs] = "${@d.getVar('S') if os.path.normpath(d.getVar('S')) != os.path.normpath(d.getVar('WORKDIR')) else os.path.join('${S}', 'patches')}"
 
 python base_do_unpack() {
     src_uri = (d.getVar('SRC_URI') or "").split()