[PATCH 2/2] unxz: Add BCJ filters to menuconfig
余生与君
lovesykun at gmail.com
Wed Mar 5 13:29:25 UTC 2025
Gentel ping.
On Tue, Jul 30, 2024 at 12:16 PM YU Jincheng <lovesykun at gmail.com> wrote:
>
> ---
> archival/bbunzip.c | 40 ++++++++++++++++++++++++++++
> archival/libarchive/unxz/xz_config.h | 33 ++++++++++++++++-------
> 2 files changed, 64 insertions(+), 9 deletions(-)
>
> diff --git a/archival/bbunzip.c b/archival/bbunzip.c
> index b7944a62a..548041df9 100644
> --- a/archival/bbunzip.c
> +++ b/archival/bbunzip.c
> @@ -575,6 +575,46 @@ int unlzma_main(int argc UNUSED_PARAM, char **argv)
> //config: help
> //config: Enable this option if you want commands like "xz -d" to work.
> //config: IOW: you'll get xz applet, but it will always require -d option.
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_X86
> +//config: bool "x86 BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_POWERPC
> +//config: bool "PowerPC BCJ filter decoder"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_IA64
> +//config: bool "IA64 BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_ARM
> +//config: bool "ARM BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_ARMTHUMB
> +//config: bool "ARM-Thumb BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_SPARC
> +//config: bool "SPARC BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_ARM64
> +//config: bool "ARM64 BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
> +//config:
> +//config:config FEATURE_UNXZ_BCJ_RISCV
> +//config: bool "RISC-V BCJ filter decoder for unxz"
> +//config: default n
> +//config: depends on UNXZ || FEATURE_UNZIP_XZ
>
> //applet:IF_UNXZ(APPLET(unxz, BB_DIR_USR_BIN, BB_SUID_DROP))
> // APPLET_ODDNAME:name main location suid_type help
> diff --git a/archival/libarchive/unxz/xz_config.h b/archival/libarchive/unxz/xz_config.h
> index 95d1817c8..0c3615c14 100644
> --- a/archival/libarchive/unxz/xz_config.h
> +++ b/archival/libarchive/unxz/xz_config.h
> @@ -10,15 +10,30 @@
> #ifndef XZ_CONFIG_H
> #define XZ_CONFIG_H
>
> -/* Uncomment as needed to enable BCJ filter decoders. */
> -/* #define XZ_DEC_X86 */
> -/* #define XZ_DEC_POWERPC */
> -/* #define XZ_DEC_IA64 */
> -/* #define XZ_DEC_ARM */
> -/* #define XZ_DEC_ARMTHUMB */
> -/* #define XZ_DEC_SPARC */
> -/* #define XZ_DEC_ARM64 */
> -/* #define XZ_DEC_RISCV */
> +#if ENABLE_FEATURE_UNXZ_BCJ_X86
> +#define XZ_DEC_X86
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_POWERPC
> +#define XZ_DEC_POWERPC
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_IA64
> +#define XZ_DEC_IA64
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_ARM
> +#define XZ_DEC_ARM
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_ARMTHUMB
> +#define XZ_DEC_ARMTHUMB
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_SPARC
> +#define XZ_DEC_SPARC
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_ARM64
> +#define XZ_DEC_ARM64
> +#endif
> +#if ENABLE_FEATURE_UNXZ_BCJ_RISCV
> +#define XZ_DEC_RISCV
> +#endif
>
> #include <stdbool.h>
> #include <stdlib.h>
> --
> 2.43.0
>
More information about the busybox
mailing list