X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=configure.ac;h=57dd78b80b4dce150d37b428ffab8b069cdc6bd7;hp=109cfed500ee222c6ab1d3236cc7bc146c0d3704;hb=refs%2Fheads%2Fzstd_support;hpb=93f86ac0a2b4b0eaf8bc616ab742bc7e7adf8aa4 diff --git a/configure.ac b/configure.ac index 109cfed5..57dd78b8 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ ############################################################################### -AC_INIT([wimlib], [1.10.0-BETA], [ebiggers3@gmail.com]) +AC_INIT([wimlib], [1.13.0-BETA], [ebiggers3@gmail.com]) AC_CONFIG_SRCDIR([src/wim.c]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_AUX_DIR([build-aux]) @@ -34,7 +34,8 @@ case "$host_os" in mingw*) # Native Windows WINDOWS_NATIVE_BUILD="yes" - PLATFORM_CPPFLAGS="-D_POSIX -D_POSIX_THREAD_SAFE_FUNCTIONS -DUNICODE -D_UNICODE -D_CRT_NON_CONFORMING_SWPRINTFS" + # -D__MINGW_USE_VC2005_COMPAT: make time_t 64-bit on 32-bit Windows. + PLATFORM_CPPFLAGS="-D_POSIX -D_POSIX_THREAD_SAFE_FUNCTIONS -DUNICODE -D_UNICODE -D_CRT_NON_CONFORMING_SWPRINTFS -D__MINGW_USE_VC2005_COMPAT" PLATFORM_CFLAGS="-municode -mno-ms-bitfields" PLATFORM_LDFLAGS="-no-undefined" WITH_NTFS_3G_DEFAULT="no" @@ -59,12 +60,12 @@ AM_CONDITIONAL([WINDOWS_NATIVE_BUILD], [test "$WINDOWS_NATIVE_BUILD" = "yes"]) # Useful functions which we can do without. AC_CHECK_FUNCS([futimens utimensat flock mempcpy \ - openat fstatat readlinkat fdopendir]) + openat fstatat readlinkat fdopendir posix_fallocate \ + llistxattr lgetxattr fsetxattr lsetxattr]) # Header checks, most of which are only here to satisfy conditional includes # made by the libntfs-3g headers. AC_CHECK_HEADERS([alloca.h \ - attr/xattr.h \ byteswap.h \ endian.h \ errno.h \ @@ -76,9 +77,10 @@ AC_CHECK_HEADERS([alloca.h \ sys/byteorder.h \ sys/endian.h \ sys/file.h \ - sys/param.h \ + sys/syscall.h \ sys/sysctl.h \ sys/times.h \ + sys/xattr.h \ time.h \ utime.h]) @@ -91,6 +93,13 @@ AC_CHECK_MEMBER([struct stat.st_mtim], [], [#include ]) +# Check for possible support for the Linux getrandom() system call +AC_CHECK_DECL([__NR_getrandom], + [AC_DEFINE([HAVE_NR_GETRANDOM], [1], [Define to 1 if the system + headers define a system call number for getrandom()])], + [], + [#include ]) + ############################################################################### # Required libraries # ############################################################################### @@ -160,12 +169,6 @@ if test "$WITH_FUSE" = "yes"; then versions of glibc include this library. Either install this library, or configure --without-fuse to disable support for mounting WIM images.])]) - AC_CHECK_LIB([attr], [getxattr], [], - [AC_MSG_ERROR([Cannot find libattr! - wimlib needs this for the extended attribute functions, which are used - in the code for mounting WIM images. Either install this library, or - configure --without-fuse to disable support for mounting WIM images.])]) - PKGCONFIG_PRIVATE_LIBS="$PKGCONFIG_PRIVATE_LIBS -lrt" AC_SUBST([LIBRT_LIBS], [-lrt]) fi @@ -218,6 +221,27 @@ else fi AM_CONDITIONAL([ENABLE_SSSE3_SHA1], [test "$ENABLE_SSSE3_SHA1" = "yes"]) +# --------------------------- Zstandard support ------------------------------- + +AC_MSG_CHECKING([whether to include support for Zstandard compression]) +AC_ARG_WITH([zstd], + [AS_HELP_STRING([--with-zstd], + [Zstandard compression support via libzstd + (EXPERIMENTAL)])], + [WITH_ZSTD=$withval], + [WITH_ZSTD=no]) +AC_MSG_RESULT([$WITH_ZSTD]) + +if test "$WITH_ZSTD" = "yes" ; then + PKG_CHECK_MODULES([LIBZSTD], [libzstd], [], + [AC_MSG_ERROR([Cannot find libzstd! Either install libzstd, or + configure --without-zstd to disable Zstandard compression + support.])]) + PKGCONFIG_PRIVATE_REQUIRES="$PKGCONFIG_PRIVATE_REQUIRES zstd" + AC_DEFINE([WITH_ZSTD], [1], [Define to 1 if using Zstandard support]) +fi +AM_CONDITIONAL([WITH_ZSTD], [test "$WITH_ZSTD" = "yes"]) + # ----------------------------- Other options --------------------------------- AC_MSG_CHECKING([whether to include error messages])