summaryrefslogtreecommitdiffstats
path: root/scripts/lib/recipetool/create.py
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2016-01-23 00:59:58 +1300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-01-24 09:40:33 +0000
commit50e40fc91f74cce464dc5c7556550cfe91b95c7c (patch)
tree755bb0f3063b20d3590c66c84e0c2fc3a2e7eaa1 /scripts/lib/recipetool/create.py
parent7e1691de0aa6aae6f86143b581700dd77c72afca (diff)
downloadpoky-50e40fc91f74cce464dc5c7556550cfe91b95c7c.tar.gz
devtool / recipetool: support specifying a subdirectory within the fetched source
Sometimes you don't want to build an entire project, just a subdirectory of it; add a --src-subdir option to make that easier. (We still look for a single subdirectory in what gets unpacked, e.g. what you might find within a tarball, so whatever you specify with this option is added onto the end of that.) (From OE-Core rev: 59682d78f95732e014f78f13e0a05f843860d9bb) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/recipetool/create.py')
-rw-r--r--scripts/lib/recipetool/create.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 43861ee96b..9c3a63d155 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -324,6 +324,12 @@ def create_recipe(args):
324 srcuri = '' 324 srcuri = ''
325 srctree = args.source 325 srctree = args.source
326 326
327 if args.src_subdir:
328 srcsubdir = os.path.join(srcsubdir, args.src_subdir)
329 srctree_use = os.path.join(srctree, args.src_subdir)
330 else:
331 srctree_use = srctree
332
327 if args.outfile and os.path.isdir(args.outfile): 333 if args.outfile and os.path.isdir(args.outfile):
328 outfile = None 334 outfile = None
329 outdir = args.outfile 335 outdir = args.outfile
@@ -343,7 +349,7 @@ def create_recipe(args):
343 lines_before.append('# (Feel free to remove these comments when editing.)') 349 lines_before.append('# (Feel free to remove these comments when editing.)')
344 lines_before.append('#') 350 lines_before.append('#')
345 351
346 licvalues = guess_license(srctree) 352 licvalues = guess_license(srctree_use)
347 lic_files_chksum = [] 353 lic_files_chksum = []
348 if licvalues: 354 if licvalues:
349 licenses = [] 355 licenses = []
@@ -472,7 +478,7 @@ def create_recipe(args):
472 478
473 extravalues = {} 479 extravalues = {}
474 for handler in handlers: 480 for handler in handlers:
475 handler.process(srctree, classes, lines_before, lines_after, handled, extravalues) 481 handler.process(srctree_use, classes, lines_before, lines_after, handled, extravalues)
476 482
477 if not realpv: 483 if not realpv:
478 realpv = extravalues.get('PV', None) 484 realpv = extravalues.get('PV', None)
@@ -759,5 +765,6 @@ def register_commands(subparsers):
759 parser_create.add_argument('-V', '--version', help='Version to use within recipe (PV)') 765 parser_create.add_argument('-V', '--version', help='Version to use within recipe (PV)')
760 parser_create.add_argument('-b', '--binary', help='Treat the source tree as something that should be installed verbatim (no compilation, same directory structure)', action='store_true') 766 parser_create.add_argument('-b', '--binary', help='Treat the source tree as something that should be installed verbatim (no compilation, same directory structure)', action='store_true')
761 parser_create.add_argument('--also-native', help='Also add native variant (i.e. support building recipe for the build host as well as the target machine)', action='store_true') 767 parser_create.add_argument('--also-native', help='Also add native variant (i.e. support building recipe for the build host as well as the target machine)', action='store_true')
768 parser_create.add_argument('--src-subdir', help='Specify subdirectory within source tree to use', metavar='SUBDIR')
762 parser_create.set_defaults(func=create_recipe) 769 parser_create.set_defaults(func=create_recipe)
763 770