+#
+# Conditional build:
+%bcond_without asm # disable assembler
+
Summary: Zstandard - fast lossless compression algorithm
Summary(pl.UTF-8): Zstandard - szybki, bezstratny algorytm kompresji
Name: zstd
-Version: 0.5.1
+Version: 1.5.6
Release: 1
License: BSD
Group: Libraries
-#Source0Download: https://github.com/Cyan4973/zstd/releases
-Source0: https://github.com/Cyan4973/zstd/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 0f972162c5ec73d04bb2243d520d18f0
-Patch0: %{name}-noquiet.patch
-Patch1: %{name}-no32.patch
-Patch2: %{name}-noclean.patch
-URL: https://github.com/Cyan4973/zstd
+#Source0Download: https://github.com/facebook/zstd/releases
+Source0: https://github.com/facebook/zstd/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 2543d7cb3beda9ec48f965e5059dbd42
+URL: https://github.com/facebook/zstd
BuildRequires: gcc >= 5:3.2
+BuildRequires: libstdc++-devel
+BuildRequires: lz4-devel
+BuildRequires: xz-devel
+BuildRequires: zlib-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%ifarch %{arm}
+%define archcflags -DMEM_FORCE_MEMORY_ACCESS=1
+%endif
+
%description
Zstd, short for Zstandard, is a fast lossless compression algorithm,
targeting real-time compression scenarios at zlib-level compression
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
%build
CC="%{__cc}" \
-CFLAGS="%{rpmcflags} %{rpmcppflags}" \
+CXX="%{__cxx}" \
+CFLAGS="%{rpmcflags} %{rpmcppflags} %{?archcflags}" \
+CXXFLAGS="%{rpmcxxflags} %{rpmcppflags}" \
LDFLAGS="%{rpmldflags}" \
-%{__make} all
+%{__make} allmost manual \
+ V=1 \
+ PREFIX=%{_prefix} \
+ LIBDIR=%{_libdir} \
+ %{!?with_asm:ZSTD_NO_ASM=1}
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT/%{_lib}
%{__make} install \
+ V=1 \
DESTDIR=$RPM_BUILD_ROOT \
PREFIX=%{_prefix} \
LIBDIR=%{_libdir}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/libzstd.so.* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libzstd.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libzstd.so
+
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc NEWS README.md images
+%doc LICENSE CHANGELOG README.md
%attr(755,root,root) %{_bindir}/unzstd
%attr(755,root,root) %{_bindir}/zstd
%attr(755,root,root) %{_bindir}/zstdcat
-%attr(755,root,root) %{_libdir}/libzstd.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libzstd.so.0
+%attr(755,root,root) %{_bindir}/zstdgrep
+%attr(755,root,root) %{_bindir}/zstdless
+%attr(755,root,root) %{_bindir}/zstdmt
+%attr(755,root,root) /%{_lib}/libzstd.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libzstd.so.1
%{_mandir}/man1/unzstd.1*
%{_mandir}/man1/zstd.1*
%{_mandir}/man1/zstdcat.1*
+%{_mandir}/man1/zstdgrep.1*
+%{_mandir}/man1/zstdless.1*
%files devel
%defattr(644,root,root,755)
+%doc doc/{zstd_compression_format.md,zstd_manual.html,images}
%attr(755,root,root) %{_libdir}/libzstd.so
-%{_includedir}/zbuff.h
%{_includedir}/zdict.h
%{_includedir}/zstd.h
+%{_includedir}/zstd_errors.h
%{_pkgconfigdir}/libzstd.pc
%files static