Hi,

Maybe using an environment variable?



On 24/06/2015 12:23, Ed Bartosh wrote:
On Tue, Jun 23, 2015 at 07:22:49AM -0400, Philip Balister wrote:
Can you add a way to enable multiple threads for xz? I found this helps
speed up file creation.

I thought about this and other compressor options, but didn't find a good
way to add them. Introducing new commandline option or config value doesn't
look convenient to use from my point of view.

Can you propose something better than that?

Regards,
Ed

Philip

On 06/23/2015 05:53 AM, Ed Bartosh wrote:
Implemented compressing result image with specified compressor.
Updated reporting code to show compressed image.

[YOCTO #7593]

Signed-off-by: Ed Bartosh <ed.bart...@linux.intel.com>

diff --git a/scripts/lib/wic/imager/direct.py b/scripts/lib/wic/imager/direct.py
index f3f20e0..2ea7e4e 100644
--- a/scripts/lib/wic/imager/direct.py
+++ b/scripts/lib/wic/imager/direct.py
@@ -33,6 +33,7 @@ from wic.utils.partitionedfs import Image
  from wic.utils.errors import CreatorError, ImageError
  from wic.imager.baseimager import BaseImageCreator
  from wic.plugin import pluginmgr
+from wic.utils.oe.misc import exec_cmd
disk_methods = {
      "do_install_disk":None,
@@ -71,6 +72,7 @@ class DirectImageCreator(BaseImageCreator):
          self.bootimg_dir = bootimg_dir
          self.kernel_dir = kernel_dir
          self.native_sysroot = native_sysroot
+        self.compressor = compressor
def __get_part_num(self, num, parts):
          """calculate the real partition number, accounting for partitions not
@@ -318,6 +320,13 @@ class DirectImageCreator(BaseImageCreator):
                                                          self.bootimg_dir,
                                                          self.kernel_dir,
                                                          self.native_sysroot)
+        # Compress the image
+        if self.compressor:
+            for disk_name, disk in self.__image.disks.items():
+                full_path = self._full_path(self.__imgdir, disk_name, "direct")
+                msger.debug("Compressing disk %s with %s" % \
+                            (disk_name, self.compressor))
+                exec_cmd("%s %s" % (self.compressor, full_path))
def print_outimage_info(self):
          """
@@ -328,7 +337,11 @@ class DirectImageCreator(BaseImageCreator):
          parts = self._get_parts()
for disk_name, disk in self.__image.disks.items():
-            full_path = self._full_path(self.__imgdir, disk_name, "direct")
+            extension = "direct" + {"gzip": ".gz",
+                                    "bzip2": ".bz2",
+                                    "xz": ".xz",
+                                    "": ""}.get(self.compressor)
+            full_path = self._full_path(self.__imgdir, disk_name, extension)
              msg += '  %s\n\n' % full_path
msg += 'The following build artifacts were used to create the image(s):\n'


--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to