diff options
author | Joshua Watt <JPEWhacker@gmail.com> | 2021-05-05 16:40:06 -0500 |
---|---|---|
committer | Anuj Mittal <anuj.mittal@intel.com> | 2021-05-07 08:51:32 +0800 |
commit | caa63cae723b9025943f3d60dd8ae852fc52addc (patch) | |
tree | 94b3aa1257caefee22b8565a66d14551c3b4fad2 /meta/classes/image.bbclass | |
parent | f91bb6a2a9591e28f37b1c8002dce1d053c33fd4 (diff) | |
download | openembedded-core-contrib-caa63cae723b9025943f3d60dd8ae852fc52addc.tar.gz |
classes/image: Use xargs to set file timestamps
Instead of having find directly invoke touch for each file in the root
file system, pass a list to xargs for batching. This significantly
reduces the number of times the touch program is invoked and speeds up
the do_image task time:
PKG TASK ABSDIFF RELDIFF CPUTIME1 -> CPUTIME2
my-image do_image -45.3s -94.2% 48.1s -> 2.8s
Cumulative cputime:
-44.3s -92.3% 00:48.1 (48.1s) -> 00:03.7 (3.7s)
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 15c65f90a3aa1e98c2beab2539403157df1fca08)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Diffstat (limited to 'meta/classes/image.bbclass')
-rw-r--r-- | meta/classes/image.bbclass | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 013455f492..353cc67175 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -657,7 +657,7 @@ reproducible_final_image_task () { fi # Set mtime of all files to a reproducible value bbnote "reproducible_final_image_task: mtime set to $REPRODUCIBLE_TIMESTAMP_ROOTFS" - find ${IMAGE_ROOTFS} -exec touch -h --date=@$REPRODUCIBLE_TIMESTAMP_ROOTFS {} \; + find ${IMAGE_ROOTFS} -print0 | xargs -0 touch -h --date=@$REPRODUCIBLE_TIMESTAMP_ROOTFS fi } |