mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 18:32:13 +02:00
base/kernel: Support zstd-compressed squashfs and cpio initramfs
Enable zstd PACKAGECONFIG knob for squashfs-tools and add support for zstd compressed initramfs and squashfs. (From OE-Core rev: fa146049eec5f9730781830270cc9dc55a2146f7) Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
3d2904cab5
commit
e492d55d02
@@ -9,6 +9,7 @@ PROVIDES += "${@ "virtual/kernel" if (d.getVar("KERNEL_PACKAGE_NAME") == "kernel
|
||||
DEPENDS += "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}gcc kmod-native bc-native bison-native"
|
||||
DEPENDS += "${@bb.utils.contains("INITRAMFS_FSTYPES", "cpio.lzo", "lzop-native", "", d)}"
|
||||
DEPENDS += "${@bb.utils.contains("INITRAMFS_FSTYPES", "cpio.lz4", "lz4-native", "", d)}"
|
||||
DEPENDS += "${@bb.utils.contains("INITRAMFS_FSTYPES", "cpio.zst", "zstd-native", "", d)}"
|
||||
PACKAGE_WRITE_DEPS += "depmodwrapper-cross"
|
||||
|
||||
do_deploy[depends] += "depmodwrapper-cross:do_populate_sysroot gzip-native:do_populate_sysroot"
|
||||
@@ -236,7 +237,7 @@ copy_initramfs() {
|
||||
mkdir -p ${B}/usr
|
||||
# Find and use the first initramfs image archive type we find
|
||||
rm -f ${B}/usr/${INITRAMFS_IMAGE_NAME}.cpio
|
||||
for img in cpio cpio.gz cpio.lz4 cpio.lzo cpio.lzma cpio.xz; do
|
||||
for img in cpio cpio.gz cpio.lz4 cpio.lzo cpio.lzma cpio.xz cpio.zst; do
|
||||
if [ -e "${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.$img" ]; then
|
||||
cp ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.$img ${B}/usr/.
|
||||
case $img in
|
||||
@@ -265,12 +266,17 @@ copy_initramfs() {
|
||||
xz -df ${B}/usr/${INITRAMFS_IMAGE_NAME}.$img
|
||||
break
|
||||
;;
|
||||
*zst)
|
||||
echo "zst decompressing image"
|
||||
zstd -df ${B}/usr/${INITRAMFS_IMAGE_NAME}.$img
|
||||
break
|
||||
;;
|
||||
esac
|
||||
break
|
||||
fi
|
||||
done
|
||||
# Verify that the above loop found a initramfs, fail otherwise
|
||||
[ -f ${B}/usr/${INITRAMFS_IMAGE_NAME}.cpio ] && echo "Finished copy of initramfs into ./usr" || die "Could not find any ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.cpio{.gz|.lz4|.lzo|.lzma|.xz) for bundling; INITRAMFS_IMAGE_NAME might be wrong."
|
||||
[ -f ${B}/usr/${INITRAMFS_IMAGE_NAME}.cpio ] && echo "Finished copy of initramfs into ./usr" || die "Could not find any ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.cpio{.gz|.lz4|.lzo|.lzma|.xz|.zst) for bundling; INITRAMFS_IMAGE_NAME might be wrong."
|
||||
}
|
||||
|
||||
do_bundle_initramfs () {
|
||||
|
||||
Reference in New Issue
Block a user