All of lore.kernel.org
 help / color / mirror / Atom feed
* [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.