Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Apr 2026 09:44:52 +0000
From:      Martin Matuska <mm@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Cc:        Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav <des@FreeBSD.org>
Subject:   git: d763fce2ec97 - stable/14 - libarchive: Update configuration
Message-ID:  <69e9ea14.38f9f.42c4d1a1@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch stable/14 has been updated by mm:

URL: https://cgit.FreeBSD.org/src/commit/?id=d763fce2ec97c1654d38fe9ea5e718030cc1fbc0

commit d763fce2ec97c1654d38fe9ea5e718030cc1fbc0
Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2026-04-18 08:25:31 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2026-04-23 09:44:14 +0000

    libarchive: Update configuration
    
    PR:             294577
    MFC after:      1 week
    Reviewed by:    mm
    Differential Revision:  https://reviews.freebsd.org/D56468
    
    (cherry picked from commit 05bbe5e3883492dd2afa52039da1fac45c5059a0)
---
 lib/libarchive/config_freebsd.h | 126 ++++++++++++++++++++++++++++------------
 1 file changed, 89 insertions(+), 37 deletions(-)

diff --git a/lib/libarchive/config_freebsd.h b/lib/libarchive/config_freebsd.h
index 1601adddd0de..41d91cea9bd3 100644
--- a/lib/libarchive/config_freebsd.h
+++ b/lib/libarchive/config_freebsd.h
@@ -26,30 +26,11 @@
  */
 #define __LIBARCHIVE_CONFIG_H_INCLUDED 1
 
-#include <osreldate.h>
-
-/* FreeBSD 5.0 and later has ACL and extattr support. */
-#if __FreeBSD__ > 4
-#define ARCHIVE_ACL_FREEBSD 1
-#define ARCHIVE_XATTR_FREEBSD 1
-#define HAVE_ACL_GET_PERM_NP 1
-#define HAVE_ARC4RANDOM_BUF 1
-#define HAVE_STRUCT_XVFSCONF 1
-#define HAVE_SYS_ACL_H 1
-#define HAVE_SYS_EXTATTR_H 1
-#if __FreeBSD__ > 7
-/* FreeBSD 8.0 and later has NFSv4 ACL support */
-#define ARCHIVE_ACL_FREEBSD_NFS4 1
-#define HAVE_ACL_GET_LINK_NP 1
-#define HAVE_ACL_IS_TRIVIAL_NP 1
-#define HAVE_ACL_SET_LINK_NP 1
-#endif /* __FreeBSD__ > 7 */
-#endif /* __FreeBSD__ > 4 */
-
 #ifdef WITH_OPENSSL
 #define HAVE_LIBCRYPTO 1
 #define HAVE_OPENSSL_EVP_H 1
 #define HAVE_OPENSSL_MD5_H 1
+#define HAVE_OPENSSL_OPENSSLV_H 1
 #define HAVE_OPENSSL_RIPEMD_H 1
 #define HAVE_OPENSSL_SHA_H 1
 #define HAVE_OPENSSL_SHA256_INIT 1
@@ -75,13 +56,59 @@
 #define HAVE_SHA512_INIT 1
 #endif
 
+#define ARCHIVE_ACL_FREEBSD 1
+#define ARCHIVE_ACL_FREEBSD_NFS4 1
+#define ARCHIVE_XATTR_FREEBSD 1
+#define HAVE_ACL_ADD_FLAG_NP 1
+#define HAVE_ACL_ADD_PERM 1
+#define HAVE_ACL_CLEAR_FLAGS_NP 1
+#define HAVE_ACL_CLEAR_PERMS 1
+#define HAVE_ACL_CREATE_ENTRY 1
+#define HAVE_ACL_DELETE_DEF_FILE 1
+#define HAVE_ACL_ENTRY_T 1
+#define HAVE_ACL_FREE 1
+#define HAVE_ACL_GET_BRAND_NP 1
+#define HAVE_ACL_GET_ENTRY 1
+#define HAVE_ACL_GET_ENTRY_TYPE_NP 1
+#define HAVE_ACL_GET_FD 1
+#define HAVE_ACL_GET_FD_NP 1
+#define HAVE_ACL_GET_FILE 1
+#define HAVE_ACL_GET_FLAGSET_NP 1
+#define HAVE_ACL_GET_FLAG_NP 1
+#define HAVE_ACL_GET_LINK_NP 1
+#define HAVE_ACL_GET_PERMSET 1
+#define HAVE_ACL_GET_PERM_NP 1
+#define HAVE_ACL_GET_QUALIFIER 1
+#define HAVE_ACL_GET_TAG_TYPE 1
+#define HAVE_ACL_INIT 1
+#define HAVE_ACL_IS_TRIVIAL_NP 1
+#define HAVE_ACL_PERMSET_T 1
+#define HAVE_ACL_SET_ENTRY_TYPE_NP 1
+#define HAVE_ACL_SET_FD 1
+#define HAVE_ACL_SET_FD_NP 1
+#define HAVE_ACL_SET_FILE 1
+#define HAVE_ACL_SET_LINK_NP 1
+#define HAVE_ACL_SET_QUALIFIER 1
+#define HAVE_ACL_SET_TAG_TYPE 1
+#define HAVE_ACL_T 1
+#define HAVE_ACL_TAG_T 1
+#define HAVE_ARC4RANDOM_BUF 1
 #define HAVE_BSDXML_H 1
 #define HAVE_BZLIB_H 1
 #define HAVE_CHFLAGS 1
 #define HAVE_CHOWN 1
 #define HAVE_CHROOT 1
+#define HAVE_CLOSEFROM 1
+#define HAVE_CLOSE_RANGE 1
 #define HAVE_CTIME_R 1
 #define HAVE_CTYPE_H 1
+#ifndef __linux__
+#define HAVE_D_MD_ORDER 1
+#endif
+#define HAVE_DECL_ACL_SYNCHRONIZE 1
+#define HAVE_DECL_ACL_TYPE_EXTENDED 0
+#define HAVE_DECL_ACL_TYPE_NFS4 1
+#define HAVE_DECL_ACL_USER 1
 #define HAVE_DECL_EXTATTR_NAMESPACE_USER 1
 #define HAVE_DECL_INT32_MAX 1
 #define HAVE_DECL_INT32_MIN 1
@@ -95,15 +122,21 @@
 #define HAVE_DECL_UINT32_MAX 1
 #define HAVE_DECL_UINT64_MAX 1
 #define HAVE_DECL_UINTMAX_MAX 1
+#define HAVE_DECL_XATTR_NOFOLLOW 0
 #define HAVE_DIRENT_H 1
 #define HAVE_DIRFD 1
 #define HAVE_DLFCN_H 1
-#ifndef __linux__
-#define HAVE_D_MD_ORDER 1
-#endif
 #define HAVE_EFTYPE 1
 #define HAVE_EILSEQ 1
 #define HAVE_ERRNO_H 1
+#define HAVE_EXTATTR_GET_FD 1
+#define HAVE_EXTATTR_GET_FILE 1
+#define HAVE_EXTATTR_GET_LINK 1
+#define HAVE_EXTATTR_LIST_FD 1
+#define HAVE_EXTATTR_LIST_FILE 1
+#define HAVE_EXTATTR_LIST_LINK 1
+#define HAVE_EXTATTR_SET_FD 1
+#define HAVE_EXTATTR_SET_LINK 1
 #define HAVE_FCHDIR 1
 #define HAVE_FCHFLAGS 1
 #define HAVE_FCHMOD 1
@@ -120,26 +153,33 @@
 #define HAVE_FSTATFS 1
 #define HAVE_FSTATVFS 1
 #define HAVE_FTRUNCATE 1
+#define HAVE_FUTIMENS 1
 #define HAVE_FUTIMES 1
 #define HAVE_FUTIMESAT 1
+#define HAVE_GETEGID 1
 #define HAVE_GETEUID 1
 #define HAVE_GETGRGID_R 1
 #define HAVE_GETGRNAM_R 1
 #define HAVE_GETLINE 1
-#define HAVE_GETOPT_OPTRESET 1
 #define HAVE_GETPID 1
 #define HAVE_GETPWNAM_R 1
 #define HAVE_GETPWUID_R 1
+#define HAVE_GETRESGID 1
+#define HAVE_GETRESUID 1
 #define HAVE_GETVFSBYNAME 1
 #define HAVE_GMTIME_R 1
 #define HAVE_GRP_H 1
 #define HAVE_INTMAX_T 1
 #define HAVE_INTTYPES_H 1
+#define HAVE_ISSETUGID 1
 #define HAVE_LANGINFO_H 1
 #define HAVE_LCHFLAGS 1
 #define HAVE_LCHMOD 1
 #define HAVE_LCHOWN 1
+#define HAVE_LIBBZ2 1
+#define HAVE_LIBLZMA 1
 #define HAVE_LIBZ 1
+#define HAVE_LIBZSTD 1
 #define HAVE_LIMITS_H 1
 #define HAVE_LINK 1
 #define HAVE_LINKAT 1
@@ -148,9 +188,10 @@
 #define HAVE_LONG_LONG_INT 1
 #define HAVE_LSTAT 1
 #define HAVE_LUTIMES 1
+#define HAVE_LZMA_H 1
+#define HAVE_LZMA_STREAM_ENCODER_MT 1
 #define HAVE_MBRTOWC 1
 #define HAVE_MEMMOVE 1
-#define HAVE_MEMORY_H 1
 #define HAVE_MEMSET 1
 #define HAVE_MKDIR 1
 #define HAVE_MKFIFO 1
@@ -162,7 +203,16 @@
 #define HAVE_PIPE 1
 #define HAVE_POLL 1
 #define HAVE_POLL_H 1
+#if 0
+/*
+ * FreeBSD does have posix_spawn() and posix_spawnp(), but they are
+ * wrappers around fork() + execve() and fork() + execvp() respectively,
+ * so there is no reason to prefer them to the simpler alternatives,
+ * unlike e.g. Darwin where posix_spawn() is a system call.
+ */
+#define HAVE_POSIX_SPAWN 1
 #define HAVE_POSIX_SPAWNP 1
+#endif
 #define HAVE_PTHREAD_H 1
 #define HAVE_PWD_H 1
 #define HAVE_READLINK 1
@@ -182,6 +232,7 @@
 #define HAVE_STATVFS 1
 #define HAVE_STDARG_H 1
 #define HAVE_STDINT_H 1
+#define HAVE_STDIO_H 1
 #define HAVE_STDLIB_H 1
 #define HAVE_STRCHR 1
 #define HAVE_STRDUP 1
@@ -192,6 +243,8 @@
 #define HAVE_STRING_H 1
 #define HAVE_STRNLEN 1
 #define HAVE_STRRCHR 1
+#define HAVE_STRUCT_STATFS 1
+#define HAVE_STRUCT_STATFS_F_IOSIZE 1
 #define HAVE_STRUCT_STATFS_F_NAMEMAX 1
 #define HAVE_STRUCT_STAT_ST_BIRTHTIME 1
 #define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1
@@ -200,13 +253,17 @@
 #define HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 1
 #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
 #define HAVE_STRUCT_TM_TM_GMTOFF 1
+#define HAVE_STRUCT_VFSCONF 1
+#define HAVE_STRUCT_XVFSCONF 1
 #define HAVE_SYMLINK 1
+#define HAVE_SYSCONF 1
+#define HAVE_SYS_ACL_H 1
 #define HAVE_SYS_CDEFS_H 1
+#define HAVE_SYS_EXTATTR_H 1
 #define HAVE_SYS_IOCTL_H 1
 #define HAVE_SYS_MOUNT_H 1
 #define HAVE_SYS_PARAM_H 1
 #define HAVE_SYS_POLL_H 1
-#define HAVE_SYS_QUEUE_H 1
 #define HAVE_SYS_SELECT_H 1
 #define HAVE_SYS_STATVFS_H 1
 #define HAVE_SYS_STAT_H 1
@@ -214,6 +271,8 @@
 #define HAVE_SYS_TYPES_H 1
 #define HAVE_SYS_UTSNAME_H 1
 #define HAVE_SYS_WAIT_H 1
+#define HAVE_TCGETATTR 1
+#define HAVE_TCSETATTR 1
 #define HAVE_TIMEGM 1
 #define HAVE_TIME_H 1
 #define HAVE_TZSET 1
@@ -224,6 +283,7 @@
 #define HAVE_UNSIGNED_LONG_LONG 1
 #define HAVE_UNSIGNED_LONG_LONG_INT 1
 #define HAVE_UTIME 1
+#define HAVE_UTIMENSAT 1
 #define HAVE_UTIMES 1
 #define HAVE_UTIME_H 1
 #define HAVE_VFORK 1
@@ -240,19 +300,11 @@
 #define HAVE_WMEMCPY 1
 #define HAVE_WMEMMOVE 1
 #define HAVE_ZLIB_H 1
+#define HAVE_ZSTD_H 1
+#define HAVE_ZSTD_compressStream 1
+#define HAVE_ZSTD_minCLevel 1
 #define TIME_WITH_SYS_TIME 1
 
-#if __FreeBSD_version >= 1100056
-#define HAVE_FUTIMENS 1
-#define HAVE_UTIMENSAT 1
-#endif
-
-/* FreeBSD 4 and earlier lack intmax_t/uintmax_t */
-#if __FreeBSD__ < 5
-#define intmax_t int64_t
-#define uintmax_t uint64_t
-#endif
-
 /* FreeBSD defines for archive_hash.h */
 #ifdef WITH_OPENSSL
 #define ARCHIVE_CRYPTO_MD5_OPENSSL 1


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69e9ea14.38f9f.42c4d1a1>