* [PATCH 0/1] Mark some tasks in extensible SDK as 'noexec'
@ 2015-05-13 6:50 Chen Qi
2015-05-13 6:50 ` [PATCH 1/1] populate_sdk_ext: set noexec flag for some tasks Chen Qi
0 siblings, 1 reply; 2+ messages in thread
From: Chen Qi @ 2015-05-13 6:50 UTC (permalink / raw)
To: openembedded-core
The following changes since commit 2d09cb28f25080ed337d37d2d4381b846bbe6247:
gcc5: Add PR65779 patch to fix powerpc compile issues (2015-05-12 13:10:17 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib ChenQi/SDK-noexec
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=ChenQi/SDK-noexec
Chen Qi (1):
populate_sdk_ext: set noexec flag for some tasks
meta/classes/populate_sdk_ext.bbclass | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
--
1.9.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH 1/1] populate_sdk_ext: set noexec flag for some tasks
2015-05-13 6:50 [PATCH 0/1] Mark some tasks in extensible SDK as 'noexec' Chen Qi
@ 2015-05-13 6:50 ` Chen Qi
0 siblings, 0 replies; 2+ messages in thread
From: Chen Qi @ 2015-05-13 6:50 UTC (permalink / raw)
To: openembedded-core
For the SDK, what we are interested in is the sysroot part. So the
only useful task is do_populate_sysroot. Other tasks like do_package
don't need to run. So mark them as 'noexec' for SDK.
This would result in two benefits:
1) The size of extensible SDK is larged reduced. For example, extensible
SDK for core-image-minimal is reduced from 1.8G to 793M.
2) The installation time is reduced as a lot of tasks are not run.
[YOCTO #7590]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
meta/classes/populate_sdk_ext.bbclass | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass
index dc2c58e..573d338 100644
--- a/meta/classes/populate_sdk_ext.bbclass
+++ b/meta/classes/populate_sdk_ext.bbclass
@@ -141,8 +141,22 @@ python copy_buildsystem () {
sigfile = d.getVar('WORKDIR', True) + '/locked-sigs.inc'
oe.copy_buildsystem.generate_locked_sigs(sigfile, d)
+ # Mark tasks to be 'noexec' for the SDK as we only need the sysroot part
+ base_class_path = os.path.join(baseoutpath, core_meta_subdir, 'classes', 'base.bbclass')
+ if os.path.exists(base_class_path):
+ with open(base_class_path, 'a') as f:
+ f.write('do_package[noexec] = "1"\n')
+ f.write('do_packagedata[noexec] = "1"\n')
+ f.write('do_package_qa[noexec] = "1"\n')
+ f.write('do_package_write_rpm[noexec] = "1"\n')
+ f.write('do_package_write_ipk[noexec] = "1"\n')
+ f.write('do_package_write_deb[noexec] = "1"\n')
+ f.write('do_deploy[noexec] = "1"\n')
+ f.write('do_populate_lic[noexec] = "1"\n')
+ f.write('do_rootfs[noexec] = "1"\n')
+
# Filter the locked signatures file to just the sstate tasks we are interested in
- allowed_tasks = ['do_populate_lic', 'do_populate_sysroot', 'do_packagedata', 'do_package_write_ipk', 'do_package_write_rpm', 'do_package_write_deb', 'do_package_qa', 'do_deploy']
+ allowed_tasks = ['do_populate_sysroot']
excluded_targets = d.getVar('SDK_TARGETS', True)
lockedsigs_pruned = baseoutpath + '/conf/locked-sigs.inc'
oe.copy_buildsystem.prune_lockedsigs(allowed_tasks,
--
1.9.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-05-13 6:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-13 6:50 [PATCH 0/1] Mark some tasks in extensible SDK as 'noexec' Chen Qi
2015-05-13 6:50 ` [PATCH 1/1] populate_sdk_ext: set noexec flag for some tasks Chen Qi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.