summaryrefslogtreecommitdiff
path: root/scripts/lib
diff options
context:
space:
mode:
authorMarkus Lehtonen <markus.lehtonen@linux.intel.com>2015-04-27 10:53:13 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-04-27 15:05:39 +0100
commit6ac5692426956e276ba2119f917b0f30791e6cd6 (patch)
tree20099b70851e452fc8473607d6558ec20b84e666 /scripts/lib
parentcab517bb1d7628fd8c1080f12462b86928ca720b (diff)
downloadopenembedded-core-6ac5692426956e276ba2119f917b0f30791e6cd6.tar.gz
openembedded-core-6ac5692426956e276ba2119f917b0f30791e6cd6.tar.bz2
openembedded-core-6ac5692426956e276ba2119f917b0f30791e6cd6.zip
devtool: modify: use B=S if that is the default for the recipe
Makes the build succeed for packages which do not support separate build directory, e.g. zlib. The same outcome could be achieved with the --same-dir option, but, it's generally hard to tell if a random package would need that option. The negative side effect of this patch is that dev srctree (of some packages that build fine without this modification) gets dirtied by build artefacts. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Acked-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib')
-rw-r--r--scripts/lib/devtool/standard.py17
1 files changed, 12 insertions, 5 deletions
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
index d5ded2f680..fbac34edfd 100644
--- a/scripts/lib/devtool/standard.py
+++ b/scripts/lib/devtool/standard.py
@@ -384,12 +384,19 @@ def modify(args, config, basepath, workspace):
f.write('inherit externalsrc\n')
f.write('# NOTE: We use pn- overrides here to avoid affecting multiple variants in the case where the recipe uses BBCLASSEXTEND\n')
f.write('EXTERNALSRC_pn-%s = "%s"\n' % (args.recipename, srctree))
- if args.same_dir or bb.data.inherits_class('autotools-brokensep', rd):
- if args.same_dir:
- logger.info('using source tree as build directory since --same-dir specified')
- else:
- logger.info('using source tree as build directory since original recipe inherits autotools-brokensep')
+
+ b_is_s = True
+ if args.same_dir:
+ logger.info('using source tree as build directory since --same-dir specified')
+ elif bb.data.inherits_class('autotools-brokensep', rd):
+ logger.info('using source tree as build directory since original recipe inherits autotools-brokensep')
+ elif rd.getVar('B', True) == s:
+ logger.info('using source tree as build directory since that is the default for this recipe')
+ else:
+ b_is_s = False
+ if b_is_s:
f.write('EXTERNALSRC_BUILD_pn-%s = "%s"\n' % (args.recipename, srctree))
+
if initial_rev:
f.write('\n# initial_rev: %s\n' % initial_rev)
for commit in commits: