# git rev-parse -q --verify 8cd91daafbfebcf1be719328933e5ae0416088ae^{commit} 8cd91daafbfebcf1be719328933e5ae0416088ae already have revision, skipping fetch # git checkout -q -f -B kisskb 8cd91daafbfebcf1be719328933e5ae0416088ae # git clean -qxdf # < git log -1 # commit 8cd91daafbfebcf1be719328933e5ae0416088ae # Author: Parth Pancholi # Date: Thu Nov 14 15:56:44 2024 +0100 # # kbuild: switch from lz4c to lz4 for compression # # Replace lz4c with lz4 for kernel image compression. # Although lz4 and lz4c are functionally similar, lz4c has been deprecated # upstream since 2018. Since as early as Ubuntu 16.04 and Fedora 25, lz4 # and lz4c have been packaged together, making it safe to update the # requirement from lz4c to lz4. # # Consequently, some distributions and build systems, such as OpenEmbedded, # have fully transitioned to using lz4. OpenEmbedded core adopted this # change in commit fe167e082cbd ("bitbake.conf: require lz4 instead of # lz4c"), causing compatibility issues when building the mainline kernel # in the latest OpenEmbedded environment, as seen in the errors below. # # This change also updates the LZ4 compression commands to make it backward # compatible by replacing stdin and stdout with the '-' option, due to some # unclear reason, the stdout keyword does not work for lz4 and '-' works for # both. In addition, this modifies the legacy '-c1' with '-9' which is also # compatible with both. This fixes the mainline kernel build failures with # the latest master OpenEmbedded builds associated with the mentioned # compatibility issues. # # LZ4 arch/arm/boot/compressed/piggy_data # /bin/sh: 1: lz4c: not found # ... # ... # ERROR: oe_runmake failed # # Link: https://github.com/lz4/lz4/pull/553 # Suggested-by: Francesco Dolcini # Signed-off-by: Parth Pancholi # Signed-off-by: Masahiro Yamada # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 8cd91daafbfebcf1be719328933e5ae0416088ae # make -s -j 160 ARCH=powerpc O=/kisskb/build/kbuild_ppc64le_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ppc64le_defconfig Using /kisskb/src/arch/powerpc/configs/ppc64_defconfig as base Merging /kisskb/src/arch/powerpc/configs/le.config # # merged configuration written to .config (needs make) # # < make -s -j 160 ARCH=powerpc O=/kisskb/build/kbuild_ppc64le_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 160 ARCH=powerpc O=/kisskb/build/kbuild_ppc64le_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 160 ARCH=powerpc O=/kisskb/build/kbuild_ppc64le_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- Completed OK # rm -rf /kisskb/build/kbuild_ppc64le_defconfig_powerpc-gcc5 # Build took: 0:02:00.766771