populate_sdk_ext.bbclass: add ESDK_MANIFEST_EXCLUDES
cover populate_sdk_ext.bbclass: add ESDK_MANIFEST_EXCLUDES
The following changes since commit 4ed19ac8c19afd56d445d84e02b622cb056b8359:
poky: Switch to post release name/version (2017-11-14 17:26:58 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib ChenQi/esdk_manifest_excludes
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/esdk_manifest_excludes
Chen Qi (1):
populate_sdk_ext.bbclass: add ESDK_MANIFEST_EXCLUDES
meta/classes/populate_sdk_ext.bbclass | 6 ++++++ 1 file changed, 6 insertions(+)
Signature · 1 line
1.9.1
PATCH 1/1 populate_sdk_ext.bbclass: add ESDK_MANIFEST_EXCLUDES
Add ESDK_MANIFEST_EXCLUDES to enable excluding items from 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.
--- meta/classes/populate_sdk_ext.bbclass | 6 ++++++ 1 file changed, 6 insertions(+)
meta/classes/populate_sdk_ext.bbclass +6 -0
@@ -485,12 +485,18 @@ python copy_buildsystem () { # sdk_ext_postinst() below) thus the checksum we take here would always # be different. manifest_file_list = ['conf/*'] + esdk_manifest_excludes = (d.getVar('ESDK_MANIFEST_EXCLUDES') or '').split() + esdk_manifest_excludes_list = [] + for exclude_item in esdk_manifest_excludes: + esdk_manifest_excludes_list += glob.glob(os.path.join(baseoutpath, exclude_item)) manifest_file = os.path.join(baseoutpath, 'conf', 'sdk-conf-manifest') with open(manifest_file, 'w') as f: for item in manifest_file_list: for fn in glob.glob(os.path.join(baseoutpath, item)): if fn == manifest_file: continue + if fn in esdk_manifest_excludes_list: + continue chksum = bb.utils.sha256_file(fn) f.write('%s\t%s\n' % (chksum, os.path.relpath(fn, baseoutpath))) }
Signature · 1 line
1.9.1
ping
Could someone help review this patch?
Thanks,
Chen Qi
Quoted 43 lines · Chen Qi
Add
ESDK_MANIFEST_EXCLUDESto enable excluding items from 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_EXCLUDESto 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.Signed-off-by Chen Qi <[email protected]>--- meta/classes/populate_sdk_ext.bbclass | 6 ++++++ 1 file changed, 6 insertions(+)meta/classes/populate_sdk_ext.bbclass +6
-0@@ -485,12 +485,18 @@ python copy_buildsystem () { # sdk_ext_postinst() below) thus the checksum we take here would always # be different. manifest_file_list = ['conf/*'] + esdk_manifest_excludes = (d.getVar('ESDK_MANIFEST_EXCLUDES') or '').split() + esdk_manifest_excludes_list = [] + for exclude_item in esdk_manifest_excludes: + esdk_manifest_excludes_list += glob.glob(os.path.join(baseoutpath, exclude_item)) manifest_file = os.path.join(baseoutpath, 'conf', 'sdk-conf-manifest') with open(manifest_file, 'w') as f: for item in manifest_file_list: for fn in glob.glob(os.path.join(baseoutpath, item)): if fn == manifest_file: continue + if fn in esdk_manifest_excludes_list: + continue chksum = bb.utils.sha256_file(fn) f.write('%s\t%s\n' % (chksum, os.path.relpath(fn, baseoutpath))) }