diff options
author | Nick Terrell <terrelln@fb.com> | 2017-09-08 13:29:23 -0700 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2017-09-25 15:17:13 +0200 |
commit | 717a8b1e5d1ba69154ef84b35be75c9cf7730e1d (patch) | |
tree | 0f8d0e15f92171dc4cd7ed23ec789f50b83d486c /configure.ac | |
parent | 86529862e1ff1b1b27aafc207b75b0c851fbfd34 (diff) | |
download | btrfs-progs-717a8b1e5d1ba69154ef84b35be75c9cf7730e1d.tar.gz btrfs-progs-717a8b1e5d1ba69154ef84b35be75c9cf7730e1d.tar.bz2 btrfs-progs-717a8b1e5d1ba69154ef84b35be75c9cf7730e1d.zip |
btrfs-progs: Add zstd support
Adds zstd support to the btrfs program. An optional dependency on libzstd
>= 1.0.0 is added. Autoconf accepts `--enable-zstd' or `--disable-zstd' and
defaults to detecting if libzstd is present using `pkg-config'.
The patch is also available in my fork of btrfs-progs [1], which passes
Travis-CI with the new tests. The prebuilt binary is available there.
I haven't updated Android.mk.
[1] https://github.com/terrelln/btrfs-progs/tree/devel
Signed-off-by: Nick Terrell <terrelln@fb.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 41 |
1 files changed, 29 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac index ac924422..f273bbe9 100644 --- a/configure.ac +++ b/configure.ac @@ -182,6 +182,23 @@ PKG_STATIC(UUID_LIBS_STATIC, [uuid]) PKG_CHECK_MODULES(ZLIB, [zlib]) PKG_STATIC(ZLIB_LIBS_STATIC, [zlib]) +AC_ARG_ENABLE([zstd], + AS_HELP_STRING([--enable-zstd@<:@=auto@:>@], [build with zstd support (default: auto)]), + [], [enable_zstd=auto] +) + +if test "x$enable_zstd" = xauto; then + PKG_CHECK_EXISTS([libzstd >= 1.0.0], [enable_zstd=yes], [enable_zstd=no]) +fi + +if test "x$enable_zstd" = xyes; then + PKG_CHECK_MODULES(ZSTD, [libzstd >= 1.0.0]) + PKG_STATIC(ZSTD_LIBS_STATIC, [libzstd]) +fi + +AS_IF([test "x$enable_zstd" = xyes], [BTRFSRESTORE_ZSTD=1], [BTRFSRESTORE_ZSTD=0]) +AC_SUBST(BTRFSRESTORE_ZSTD) + # udev v190 introduced the btrfs builtin and a udev rule to use it. # Our udev rule gives us the friendly dm names but isn't required (or valid) # on earlier releases. @@ -221,21 +238,21 @@ AC_OUTPUT AC_MSG_RESULT([ ${PACKAGE_NAME} ${PACKAGE_VERSION} - prefix: ${prefix} - exec prefix: ${exec_prefix} + prefix: ${prefix} + exec prefix: ${exec_prefix} - bindir: ${bindir} - libdir: ${libdir} - includedir: ${includedir} + bindir: ${bindir} + libdir: ${libdir} + includedir: ${includedir} - compiler: ${CC} - cflags: ${CFLAGS} - ldflags: ${LDFLAGS} + compiler: ${CC} + cflags: ${CFLAGS} + ldflags: ${LDFLAGS} - documentation: ${enable_documentation} - backtrace support: ${enable_backtrace} - btrfs-convert: ${enable_convert} ${convertfs:+($convertfs)} + documentation: ${enable_documentation} + backtrace support: ${enable_backtrace} + btrfs-convert: ${enable_convert} ${convertfs:+($convertfs)} + btrfs-restore zstd: ${enable_zstd} Type 'make' to compile. ]) - |