aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/lib
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2015-04-28 12:22:36 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-05-01 17:08:10 +0100
commit0eeecce96a0aa757c2c4c4ac4d82e3bcbf0f982c (patch)
tree062275366583bf4557b6b84c6d1f968f26f9b523 /scripts/lib
parent09c3d648c95fe88197c15d656bda1c9303aa2079 (diff)
downloadopenembedded-core-contrib-0eeecce96a0aa757c2c4c4ac4d82e3bcbf0f982c.tar.gz
recipetool: avoid second-level subdir when extracting
When -x was specified, we were getting the normal unpack subdirectory which we don't really want - if there's only one subdirectory unpacked then we should effectively copy just it to the extraction path, not as a subdirectory under it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'scripts/lib')
-rw-r--r--scripts/lib/recipetool/create.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 1c71b24bfb5..1d5bfd995c1 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -1,6 +1,6 @@
# Recipe creation tool - create command plugin
#
-# Copyright (C) 2014 Intel Corporation
+# Copyright (C) 2014-2015 Intel Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@@ -110,11 +110,8 @@ def create_recipe(args):
if '://' in args.source:
# Fetch a URL
srcuri = args.source
- if args.extract_to:
- srctree = args.extract_to
- else:
- tempsrc = tempfile.mkdtemp(prefix='recipetool-')
- srctree = tempsrc
+ tempsrc = tempfile.mkdtemp(prefix='recipetool-')
+ srctree = tempsrc
logger.info('Fetching %s...' % srcuri)
checksums = fetch_source(args.source, srctree)
dirlist = os.listdir(srctree)
@@ -240,6 +237,10 @@ def create_recipe(args):
outlines.append('')
outlines.extend(lines_after)
+ if args.extract_to:
+ shutil.move(srctree, args.extract_to)
+ logger.info('Source extracted to %s' % args.extract_to)
+
if outfile == '-':
sys.stdout.write('\n'.join(outlines) + '\n')
else: