From d567f909ef23d362b39eb2327b1c917d7c8bbfca Mon Sep 17 00:00:00 2001 From: Baptiste Daroussin Date: Wed, 18 Sep 2019 07:57:56 +0000 Subject: [PATCH] Add native support for zstd to libarchive Note that old pkg will failed to build after this. A recent ports tree (one providing pkg 1.12+) is required to build. Older already built pkg, should continue working as expected PR: 238797 Exp run by: antoine Reviewed by: cem Approved by: cem Differential Revision: https://reviews.freebsd.org/D20752 --- Makefile.inc1 | 1 + lib/Makefile | 2 +- lib/libarchive/Makefile | 5 +++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 52af7f143520..c5c3db8318e9 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2770,6 +2770,7 @@ _prebuild_libs= ${_kerberos5_lib_libasn1} \ lib/libfigpar \ ${_lib_libgssapi} \ lib/libkiconv lib/libkvm lib/liblzma lib/libmd lib/libnv \ + lib/libzstd \ ${_lib_casper} \ lib/ncurses/ncurses lib/ncurses/ncursesw \ lib/libopie lib/libpam/libpam ${_lib_libthr} \ diff --git a/lib/Makefile b/lib/Makefile index 33f31f7f7ed6..d5ee01327e8c 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -102,7 +102,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ # libraries, those libraries should be listed as build order dependencies here. SUBDIR_DEPEND_geom= libufs -SUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd +SUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd libzstd SUBDIR_DEPEND_libauditdm= libbsm SUBDIR_DEPEND_libbsnmp= ${_libnetgraph} SUBDIR_DEPEND_libc++:= libcxxrt diff --git a/lib/libarchive/Makefile b/lib/libarchive/Makefile index 5c44669f6f85..474a91f7dda1 100644 --- a/lib/libarchive/Makefile +++ b/lib/libarchive/Makefile @@ -6,8 +6,8 @@ _LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive LIB= archive -LIBADD= z bz2 lzma bsdxml -CFLAGS+= -DHAVE_BZLIB_H=1 -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 +LIBADD= z bz2 lzma bsdxml zstd +CFLAGS+= -DHAVE_BZLIB_H=1 -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 -DHAVE_ZSTD_H=1 -DHAVE_LIBZSTD=1 # FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system. # It has no real relation to the libarchive version number. @@ -15,6 +15,7 @@ SHLIB_MAJOR= 7 CFLAGS+= -DPLATFORM_CONFIG_H=\"${.CURDIR}/config_freebsd.h\" CFLAGS+= -I${.OBJDIR} +CFLAGS+= -I${SRCTOP}/sys/contrib/zstd/lib .if ${MK_OPENSSL} != "no" CFLAGS+= -DWITH_OPENSSL