aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2026-06-04 13:12:23 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2026-06-04 13:12:23 +0000
commiteb3a0a74a069d0f294e1596504676459282bb308 (patch)
tree17f304f557b427416964dd4825058a6383764af7 /lib
parentb3a8659f3692977b2d4689d3d1388860c868dc4c (diff)
libarchive: Clean up the build configuration
* Move settings duplicated in libarchive, bsdcat, bsdcpio, bsdtar, and bsdunzip into libarchive's Makefile.inc. * Drop some CFLAGS that merely duplicated some of the contents of our platform configuration header. MFC after: 1 week Reviewed by: mm Differential Revision: https://reviews.freebsd.org/D57307
Diffstat (limited to 'lib')
-rw-r--r--lib/libarchive/Makefile7
-rw-r--r--lib/libarchive/Makefile.inc16
-rw-r--r--lib/libarchive/tests/Makefile8
3 files changed, 17 insertions, 14 deletions
diff --git a/lib/libarchive/Makefile b/lib/libarchive/Makefile
index 4e32dcf72341..c4b4bc67ba33 100644
--- a/lib/libarchive/Makefile
+++ b/lib/libarchive/Makefile
@@ -1,7 +1,8 @@
.include <src.opts.mk>
+.include "Makefile.inc"
+
PACKAGE=lib${LIB}
-_LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
LIB= archive
@@ -9,10 +10,6 @@ LIB= archive
# It has no real relation to the libarchive version number.
SHLIB_MAJOR= 7
-CFLAGS+= -I${.OBJDIR}
-CFLAGS+= -I${SRCTOP}/sys/contrib/zstd/lib
-.include "Makefile.inc"
-
.if ${MACHINE_ARCH:Marm*} != "" || ${MACHINE_ARCH:Mpowerpc*} != ""
NO_WCAST_ALIGN= yes
.if ${MACHINE_ARCH:M*64*} == ""
diff --git a/lib/libarchive/Makefile.inc b/lib/libarchive/Makefile.inc
index 755a39ec01e8..33ab0085367f 100644
--- a/lib/libarchive/Makefile.inc
+++ b/lib/libarchive/Makefile.inc
@@ -2,11 +2,17 @@
# them in sync we can get run-time crashes while running tests due to mismatches
# between structures such as archive_md5_ctx, etc.
-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 -DHAVE_ZSTD_compressStream=1 \
- -DHAVE_SYSCONF=1
-CFLAGS+= -DPLATFORM_CONFIG_H=\"${.CURDIR}/config_freebsd.h\"
+_LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
+LIBARCHIVE_VERSION_ONLY_STRING!= \
+ sed -n '/define.*ARCHIVE_VERSION_ONLY_STRING/{s,[^0-9.],,gp;q;}' \
+ ${LIBARCHIVEDIR}/libarchive/archive.h
+
+LIBADD+= z bz2 lzma bsdxml zstd
+CFLAGS+= -DPLATFORM_CONFIG_H=\"config_freebsd.h\"
+CFLAGS+= -I${SRCTOP}/lib/libarchive
+CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive
+CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive_fe
+CFLAGS+= -I${SRCTOP}/sys/contrib/zstd/lib
.if ${MK_OPENSSL} != "no"
CFLAGS+= -DWITH_OPENSSL
diff --git a/lib/libarchive/tests/Makefile b/lib/libarchive/tests/Makefile
index 3a03725054f4..3210938bc117 100644
--- a/lib/libarchive/tests/Makefile
+++ b/lib/libarchive/tests/Makefile
@@ -1,11 +1,11 @@
.include <src.opts.mk>
+.include "${SRCTOP}/lib/libarchive/Makefile.inc"
+
PACKAGE= tests
WARNS?= 3
-_LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
-
ATF_TESTS_SH+= functional_test
TEST_METADATA.functional_test+= timeout="600"
@@ -14,8 +14,8 @@ BINDIR= ${TESTSDIR}
PROGS+= libarchive_test
-CFLAGS+= -I${.CURDIR} -I${.CURDIR:H} -I${.OBJDIR}
-CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive -I${_LIBARCHIVEDIR}/libarchive/test
+CFLAGS+= -I${.OBJDIR}
+CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive/test
CFLAGS+= -I${_LIBARCHIVEDIR}/test_utils
CFLAGS+= -I${SRCTOP}/sys/contrib/zstd/lib