On 21.01.25 09:20, Sascha Hauer wrote: > On Thu, Jan 16, 2025 at 03:09:24PM +0100, Ahmad Fatoum wrote: >> barebox proper is usually compressed and this introduces a dependency on >> an outside host tool depending on the chosen compression algo. >> >> So far, we expected the utility to be in PATH, but to allow build >> systems to place it elsewhere, let's copy what Linux does and adopt a number >> of Make variable that can be overridden from the outside. > > What about the recently introduced scripts/make_fit.py? We don't use it to compress FIT images yet. Cheers, Ahma > > Sascha > >> >> Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> >> --- >> Makefile | 6 ++++++ >> scripts/Makefile.lib | 12 ++++++------ >> scripts/xz_wrap.sh | 5 +++-- >> 3 files changed, 15 insertions(+), 8 deletions(-) >> >> diff --git a/Makefile b/Makefile >> index 3487aba201b9..81cab701230e 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -440,6 +440,12 @@ PYTHON3 = python3 >> CHECK = sparse >> MKIMAGE = mkimage >> BASH = bash >> +KGZIP = gzip >> +KBZIP2 = bzip2 >> +KLZOP = lzop >> +LZMA = lzma >> +LZ4 = lz4 >> +XZ = xz >> >> CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise $(CF) >> CFLAGS_KERNEL = >> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib >> index f195ddb7e885..d4f202bd48bd 100644 >> --- a/scripts/Makefile.lib >> +++ b/scripts/Makefile.lib >> @@ -342,7 +342,7 @@ suffix_$(CONFIG_IMAGE_COMPRESSION_NONE) = comp_copy >> # --------------------------------------------------------------------------- >> >> quiet_cmd_gzip = GZIP $@ >> -cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@) || \ >> +cmd_gzip = (cat $(filter-out FORCE,$^) | $(KGZIP) -n -f -9 > $@) || \ >> (rm -f $@ ; false) >> >> %.gz: % >> @@ -373,7 +373,7 @@ cmd_xzkern = (cat $(filter-out FORCE,$^) | \ >> >> quiet_cmd_xzmisc = XZMISC $@ >> cmd_xzmisc = (cat $(filter-out FORCE,$^) | \ >> - xz --check=crc32 --lzma2=dict=1MiB) > $@ || \ >> + $(XZ) --check=crc32 --lzma2=dict=1MiB) > $@ || \ >> (rm -f $@ ; false) >> >> %.xzkern: % >> @@ -482,7 +482,7 @@ printf "%08x\n" $$dec_size | \ >> >> quiet_cmd_bzip2 = BZIP2 $@ >> cmd_bzip2 = (cat $(filter-out FORCE,$^) | \ >> - bzip2 -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> + $(KBZIP2) -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> (rm -f $@ ; false) >> >> %.bz2: % >> @@ -493,7 +493,7 @@ cmd_bzip2 = (cat $(filter-out FORCE,$^) | \ >> >> quiet_cmd_lzma = LZMA $@ >> cmd_lzma = (cat $(filter-out FORCE,$^) | \ >> - lzma -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> + $(LZMA) -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> (rm -f $@ ; false) >> >> %.lzma: % >> @@ -501,7 +501,7 @@ cmd_lzma = (cat $(filter-out FORCE,$^) | \ >> >> quiet_cmd_lzo = LZO $@ >> cmd_lzo = (cat $(filter-out FORCE,$^) | \ >> - lzop -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> + $(KLZOP) -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> (rm -f $@ ; false) >> >> %.lzo: % >> @@ -512,7 +512,7 @@ cmd_lzo = (cat $(filter-out FORCE,$^) | \ >> >> quiet_cmd_lz4 = LZ4 $@ >> cmd_lz4 = (cat $(filter-out FORCE,$^) | \ >> - lz4 -l --best stdin stdout && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> + $(LZ4) -l --best stdin stdout && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ >> (rm -f $@ ; false) >> >> %.lz4: % >> diff --git a/scripts/xz_wrap.sh b/scripts/xz_wrap.sh >> index 02823bc1df18..a106b1a9e6d2 100755 >> --- a/scripts/xz_wrap.sh >> +++ b/scripts/xz_wrap.sh >> @@ -11,6 +11,7 @@ >> >> BCJ= >> LZMA2OPTS= >> +XZ=${XZ:-xz} >> >> case $SRCARCH in >> x86) BCJ=--x86 ;; >> @@ -26,7 +27,7 @@ fi >> >> # clear BCJ filter if unsupported >> if [ -n "${BCJ}" ]; then >> - xz -H | grep -q -- $BCJ || BCJ= >> + $XZ -H | grep -q -- $BCJ || BCJ= >> fi >> >> -exec xz --check=crc32 $BCJ --lzma2=$LZMA2OPTS,dict=32MiB >> +exec $XZ --check=crc32 $BCJ --lzma2=$LZMA2OPTS,dict=32MiB >> -- >> 2.39.5 >> >> >> > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |