+#
+# Conditional build:
+%bcond_with gnutls # GnuTLS instead of OpenSSL for AES
+
Summary: C library for reading, creating, and modifying zip archives
Summary(pl.UTF-8): Biblioteka C do odczytu, zapisu i modyfikacji archiwów zip
Name: libzip
-Version: 1.1.3
-Release: 1
+Version: 1.7.3
+Release: 2
License: BSD
Group: Libraries
-Source0: http://www.nih.at/libzip/%{name}-%{version}.tar.xz
-# Source0-md5: f7196e2fbae93d7e1f843aedee9bdf40
-URL: http://www.nih.at/libzip/
-BuildRequires: autoconf >= 2.60
-BuildRequires: automake
-BuildRequires: libtool >= 2:2
+Source0: https://libzip.org/download/%{name}-%{version}.tar.xz
+# Source0-md5: c0185e10023963bbec0e0002ab39d981
+URL: https://libzip.org/
+BuildRequires: bzip2-devel
+BuildRequires: cmake >= 3.0.2
+BuildRequires: groff
+%{?with_gnutls:BuildRequires: gnutls-devel}
+%{?with_gnutls:BuildRequires: nettle-devel >= 3.0}
+%{!?with_gnutls:BuildRequires: openssl-devel}
+BuildRequires: rpmbuild(macros) >= 1.605
BuildRequires: tar >= 1:1.22
BuildRequires: xz
+BuildRequires: xz-devel >= 1:5.2
BuildRequires: zlib-devel >= 1.1.2
Requires: zlib >= 1.1.2
+Requires: xz-libs >= 1:5.2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libzip
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: bzip2-devel
+%{?with_gnutls:Requires: gnutls-devel}
+%{?with_gnutls:Requires: nettle-devel >= 3.0}
+%{!?with_gnutls:Requires: openssl-devel}
+Requires: xz-devel >= 1:5.2
Requires: zlib-devel >= 1.1.2
+Obsoletes: libzip-static < 1.4.0
%description devel
Header files for libzip library.
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki libzip.
-%package static
-Summary: Static libzip library
-Summary(pl.UTF-8): Statyczna biblioteka libzip
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description static
-Static libzip library.
-
-%description static -l pl.UTF-8
-Statyczna biblioteka libzip.
-
%prep
%setup -q
%build
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure
+install -d build
+cd build
+# .pc file generation expects dirs relative to CMAKE_INSTALL_PREFIX
+%cmake .. \
+ -DCMAKE_INSTALL_BINDIR=bin \
+ -DCMAKE_INSTALL_INCLUDEDIR=include \
+ -DCMAKE_INSTALL_LIBDIR=%{_lib} \
+ -DENABLE_COMMONCRYPTO=OFF \
+ %{!?with_gnutls:-DENABLE_GNUTLS=OFF} \
+ %{?with_gnutls:-DENABLE_OPENSSL=OFF}
+
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libzip.la
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc README.md NEWS.md THANKS LICENSE AUTHORS
+%doc AUTHORS LICENSE NEWS.md README.md THANKS
%attr(755,root,root) %{_bindir}/zipcmp
%attr(755,root,root) %{_bindir}/zipmerge
%attr(755,root,root) %{_bindir}/ziptool
-%attr(755,root,root) %{_libdir}/libzip.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libzip.so.4
+%attr(755,root,root) %{_libdir}/libzip.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libzip.so.5
%{_mandir}/man1/zipcmp.1*
%{_mandir}/man1/zipmerge.1*
%{_mandir}/man1/ziptool.1*
%files devel
%defattr(644,root,root,755)
-%doc API-CHANGES TODO.md
+%doc API-CHANGES.md TODO.md
%attr(755,root,root) %{_libdir}/libzip.so
-%dir %{_libdir}/libzip
-%{_libdir}/libzip/include
%{_includedir}/zip.h
+%{_includedir}/zipconf.h
+%{_libdir}/cmake/libzip
%{_pkgconfigdir}/libzip.pc
%{_mandir}/man3/ZIP_SOURCE_GET_ARGS.3*
%{_mandir}/man3/libzip.3*
%{_mandir}/man3/zip_*.3*
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libzip.a