mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 17:19:20 +00:00
sstate/bitbake.conf: Use pigz if available
Currently the compression of sstate objects is single threaded. In the case of ltp, this takes around 33s. If we add pigz into the list of non-fatal HOSTTOOLS and then use if it available when building the sstate object, this time drops to around 6s. Since pigz is now widely available this is an optimisation we should utilise. (From OE-Core rev: 2de56aa0792ec93445130d801936a8ea643fad27) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -715,17 +715,24 @@ sstate_task_postfunc[dirs] = "${WORKDIR}"
|
||||
#
|
||||
sstate_create_package () {
|
||||
TFILE=`mktemp ${SSTATE_PKG}.XXXXXXXX`
|
||||
|
||||
# Use pigz if available
|
||||
OPT="-cz"
|
||||
if [ -x "$(command -v pigz)" ]; then
|
||||
OPT="-I pigz -c"
|
||||
fi
|
||||
|
||||
# Need to handle empty directories
|
||||
if [ "$(ls -A)" ]; then
|
||||
set +e
|
||||
tar -czf $TFILE *
|
||||
tar $OPT -f $TFILE *
|
||||
ret=$?
|
||||
if [ $ret -ne 0 ] && [ $ret -ne 1 ]; then
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
else
|
||||
tar -cz --file=$TFILE --files-from=/dev/null
|
||||
tar $OPT --file=$TFILE --files-from=/dev/null
|
||||
fi
|
||||
chmod 0664 $TFILE
|
||||
mv -f $TFILE ${SSTATE_PKG}
|
||||
|
||||
@@ -490,7 +490,7 @@ HOSTTOOLS += " \
|
||||
HOSTTOOLS += "${@'ip ping ps scp ssh stty' if (bb.utils.contains_any('IMAGE_CLASSES', 'testimage testsdk', True, False, d) or any(x in (d.getVar("BBINCLUDED") or "") for x in ["testimage.bbclass", "testsdk.bbclass"])) else ''}"
|
||||
|
||||
# Link to these if present
|
||||
HOSTTOOLS_NONFATAL += "aws ccache gcc-ar gpg ld.bfd ld.gold nc sftp socat ssh sudo"
|
||||
HOSTTOOLS_NONFATAL += "aws ccache gcc-ar gpg ld.bfd ld.gold nc pigz sftp socat ssh sudo"
|
||||
|
||||
# Temporary add few more detected in bitbake world
|
||||
HOSTTOOLS_NONFATAL += "join nl size yes zcat"
|
||||
|
||||
Reference in New Issue
Block a user