summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2020-09-29 11:22:14 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-09-30 15:01:51 +0100
commit23bb87bff7b3446a8d4cd8ea6428274bedfae395 (patch)
tree140e62395f43c1c7d0b8a4f963a3d4f56f5a7c1a /meta/classes
parent31d3042487c7e1d61bcde37801d17e518ca88da0 (diff)
downloadpoky-23bb87bff7b3446a8d4cd8ea6428274bedfae395.tar.gz
populate_sdk_ext.bbclass: add ESDK_MANIFEST_EXCLUDES
Add ESDK_MANIFEST_EXCLUDES to enable excluding items in sdk-conf-manifest. By default, files under conf/ are all added to sdk-conf-manifest, as the manifest file is set to 'conf/*'. However, there are situations where some configuration files under conf/ directory are not intended to be added to sdk-conf-manifest, thus adding ESDK_MANIFEST_EXCLUDES to enable users to do this. This variable takes the form of glob matching. e.g. ESDK_MANIFEST_EXCLUDES = "conf/autogen*" This would exclude all files under conf/ starting with 'autogen' from sdk-conf-manifest. (From OE-Core rev: 2d71e427b530ec4ea5524efa951b6a87f21b8b22) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/populate_sdk_ext.bbclass6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass
index d659b6940a..6f35b612c2 100644
--- a/meta/classes/populate_sdk_ext.bbclass
+++ b/meta/classes/populate_sdk_ext.bbclass
@@ -522,12 +522,18 @@ python copy_buildsystem () {
522 # sdk_ext_postinst() below) thus the checksum we take here would always 522 # sdk_ext_postinst() below) thus the checksum we take here would always
523 # be different. 523 # be different.
524 manifest_file_list = ['conf/*'] 524 manifest_file_list = ['conf/*']
525 esdk_manifest_excludes = (d.getVar('ESDK_MANIFEST_EXCLUDES') or '').split()
526 esdk_manifest_excludes_list = []
527 for exclude_item in esdk_manifest_excludes:
528 esdk_manifest_excludes_list += glob.glob(os.path.join(baseoutpath, exclude_item))
525 manifest_file = os.path.join(baseoutpath, 'conf', 'sdk-conf-manifest') 529 manifest_file = os.path.join(baseoutpath, 'conf', 'sdk-conf-manifest')
526 with open(manifest_file, 'w') as f: 530 with open(manifest_file, 'w') as f:
527 for item in manifest_file_list: 531 for item in manifest_file_list:
528 for fn in glob.glob(os.path.join(baseoutpath, item)): 532 for fn in glob.glob(os.path.join(baseoutpath, item)):
529 if fn == manifest_file: 533 if fn == manifest_file:
530 continue 534 continue
535 if fn in esdk_manifest_excludes_list:
536 continue
531 chksum = bb.utils.sha256_file(fn) 537 chksum = bb.utils.sha256_file(fn)
532 f.write('%s\t%s\n' % (chksum, os.path.relpath(fn, baseoutpath))) 538 f.write('%s\t%s\n' % (chksum, os.path.relpath(fn, baseoutpath)))
533} 539}