diff --git a/bin/xbps-rindex/defs.h b/bin/xbps-rindex/defs.h index c9a04955..74e78218 100644 --- a/bin/xbps-rindex/defs.h +++ b/bin/xbps-rindex/defs.h @@ -45,4 +45,36 @@ int remove_obsoletes(struct xbps_handle *, const char *); int repodata_flush(struct xbps_handle *, const char *, xbps_dictionary_t, xbps_dictionary_t); +/* libarchive compat */ +#if ARCHIVE_VERSION_NUMBER >= 3000000 + +#define archive_read_support_compression_gzip(x) \ + archive_read_support_filter_gzip(x) + +#define archive_read_support_compression_bzip2(x) \ + archive_read_support_filter_bzip2(x) + +#define archive_read_support_compression_xz(x) \ + archive_read_support_filter_xz(x) + +#define archive_write_set_compression_gzip(x) \ + archive_write_add_filter_gzip(x) + +#define archive_write_set_compression_bzip2(x) \ + archive_write_add_filter_bzip2(x) + +#define archive_write_set_compression_xz(x) \ + archive_write_add_filter_xz(x) + +#define archive_read_finish(x) \ + archive_read_free(x) + +#define archive_write_finish(x) \ + archive_write_free(x) + +#define archive_compression_name(x) \ + archive_filter_name(x, 0) + +#endif + #endif /* !_XBPS_RINDEX_DEFS_H_ */ diff --git a/bin/xbps-rindex/repoflush.c b/bin/xbps-rindex/repoflush.c index e23de41f..7d243611 100644 --- a/bin/xbps-rindex/repoflush.c +++ b/bin/xbps-rindex/repoflush.c @@ -55,7 +55,7 @@ repodata_flush(struct xbps_handle *xhp, const char *repodir, /* Create and write our repository archive */ ar = archive_write_new(); assert(ar); - archive_write_support_compression_gzip(ar); + archive_write_set_compression_gzip(ar); archive_write_set_format_pax_restricted(ar); archive_write_set_options(ar, "compression-level=9"); archive_write_open_fd(ar, repofd); diff --git a/configure b/configure index ef091c86..817acf47 100755 --- a/configure +++ b/configure @@ -577,8 +577,8 @@ fi # # libarchive >= 2.8.0 with pkg-config support is required. # -printf "Checking for libarchive >= 3.0.2 via pkg-config ... " -if ! $PKGCONFIG_BIN --atleast-version=3.0.2 libarchive; then +printf "Checking for libarchive >= 2.8.0 via pkg-config ... " +if ! $PKGCONFIG_BIN --atleast-version=2.8.0 libarchive; then echo "libarchive.pc file not found, exiting." exit 1 else diff --git a/include/xbps_api_impl.h b/include/xbps_api_impl.h index 556381ea..08b5d0fb 100644 --- a/include/xbps_api_impl.h +++ b/include/xbps_api_impl.h @@ -74,13 +74,13 @@ #define archive_read_support_compression_xz(x) \ archive_read_support_filter_xz(x) -#define archive_write_support_compression_gzip(x) \ +#define archive_write_set_compression_gzip(x) \ archive_write_add_filter_gzip(x) -#define archive_write_support_compression_bzip2(x) \ +#define archive_write_set_compression_bzip2(x) \ archive_write_add_filter_bzip2(x) -#define archive_write_support_compression_xz(x) \ +#define archive_write_set_compression_xz(x) \ archive_write_add_filter_xz(x) #define archive_read_finish(x) \