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 <[email protected]>
---
meta/classes/image.bbclass | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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
}
--
2.31.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#151359):
https://lists.openembedded.org/g/openembedded-core/message/151359
Mute This Topic: https://lists.openembedded.org/mt/82616482/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-