mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-03-11 04:46:18 +03:00
This commit builds on the previous zstd library update and adds the necessary ZFS integration and build system changes required to make zstd 1.5.7 compile and function correctly. Changes: - Add zstd_preSplit.c (new in 1.5.7) to all build systems. - Enable x86_64 assembly in userspace (huf_decompress_amd64.S). - Disable assembly in kernel for RETHUNK/IBT compatibility. - Disable intrinsics in kernel for EL10 x86_64-v3 baseline. - Disable tracing in kernel builds for AArch64 compatibility. - Fix ZSTD_isError symbol renaming with __asm__ directive. - Rename abs64 to ZSTD_abs64 (FreeBSD kernel conflict). - Fix bitstream.h attributes (MEM_STATIC -> FORCE_INLINE_TEMPLATE). - Remove xxhash.c from BSD build (now header-only). - Update symbol names in zstd_compat_wrapper.h. - Ignore checkstyle for zstd-in.c. Kernel assembly disabled for security mitigation compatibility. User space retains full performance. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Alexander Moch <mail@alexmoch.com> Closes #18089
42 lines
1.5 KiB
Makefile
42 lines
1.5 KiB
Makefile
# SPDX-License-Identifier: CDDL-1.0
|
|
libzstd_la_CFLAGS = $(AM_CFLAGS) $(LIBRARY_CFLAGS)
|
|
libzstd_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBZPOOL_CPPFLAGS)
|
|
|
|
# -fno-tree-vectorize is set for gcc in zstd/common/compiler.h
|
|
# Set it for other compilers, too.
|
|
libzstd_la_CFLAGS += -fno-tree-vectorize
|
|
|
|
noinst_LTLIBRARIES += libzstd.la
|
|
|
|
nodist_libzstd_la_SOURCES = \
|
|
module/zstd/lib/common/entropy_common.c \
|
|
module/zstd/lib/common/error_private.c \
|
|
module/zstd/lib/common/fse_decompress.c \
|
|
module/zstd/lib/common/pool.c \
|
|
module/zstd/lib/common/zstd_common.c \
|
|
module/zstd/lib/compress/fse_compress.c \
|
|
module/zstd/lib/compress/hist.c \
|
|
module/zstd/lib/compress/huf_compress.c \
|
|
module/zstd/lib/compress/zstd_compress_literals.c \
|
|
module/zstd/lib/compress/zstd_compress_sequences.c \
|
|
module/zstd/lib/compress/zstd_compress_superblock.c \
|
|
module/zstd/lib/compress/zstd_compress.c \
|
|
module/zstd/lib/compress/zstd_double_fast.c \
|
|
module/zstd/lib/compress/zstd_fast.c \
|
|
module/zstd/lib/compress/zstd_lazy.c \
|
|
module/zstd/lib/compress/zstd_ldm.c \
|
|
module/zstd/lib/compress/zstd_opt.c \
|
|
module/zstd/lib/compress/zstd_preSplit.c \
|
|
module/zstd/lib/decompress/huf_decompress.c \
|
|
module/zstd/lib/decompress/zstd_ddict.c \
|
|
module/zstd/lib/decompress/zstd_decompress.c \
|
|
module/zstd/lib/decompress/zstd_decompress_block.c \
|
|
module/zstd/zfs_zstd.c
|
|
|
|
if TARGET_CPU_X86_64
|
|
nodist_libzstd_la_SOURCES += \
|
|
module/zstd/lib/decompress/huf_decompress_amd64.S
|
|
endif
|
|
|
|
libzstd_la_CFLAGS += -include $(top_srcdir)/module/zstd/include/zstd_compat_wrapper.h -fno-tree-vectorize -Wp,-w $(AM_CFLAGS)
|