# # spec file for package lzma-sdk # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define _sver 1604 %define _maver 16 %define _miver 04 Name: lzma-sdk Version: 16.04 Release: 0 Summary: SDK for lzma compression # Actually the site says "Public Domain". See license file. License: LGPL-2.1 Group: Productivity/Archiving/Compression Url: http://www.7-zip.org/sdk.html Source0: http://www.7-zip.org/a/lzma%{_sver}.7z Source1: lzma-sdk-LICENSE.fedora Patch0: lzma-sdk-16.04-sharedlib.patch BuildRequires: dos2unix BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: p7zip BuildRequires: pkg-config BuildRoot: %{_tmppath}/%{name}-%{version}-build %description LZMA SDK provides the documentation, samples, header files, libraries, and tools you need to develop applications that use LZMA compression. LZMA is default and general compression method of 7z format in 7-Zip compression program (www.7-zip.org). LZMA provides high compression ratio and very fast decompression. LZMA is an improved version of famous LZ77 compression algorithm. It was improved in way of maximum increasing of compression ratio, keeping high decompression speed and low memory requirements for decompressing. %package devel Summary: Development libraries and headers for %{name} Group: Development/Languages/C and C++ Requires: liblzmasdk%{_maver} = %{version} %description devel This package contains development libraries and headers for %{name}. %package -n liblzmasdk%{_maver} Summary: 7zip lzma library Group: Productivity/Archiving/Compression %description -n liblzmasdk%{_maver} Library for encoding/decoding lzma files from the 7zip project. %prep %setup -q -c -n lzma%{_sver} %patch0 -p1 sed -e 's/__LIBMAJ__/%{_maver}/' \ -e 's/__LIBMIN__/%{_miver}/' \ -i CPP/7zip/Bundles/LzmaCon/makefile.gcc dos2unix DOC/*.txt install -p -m 0644 %{SOURCE1} . %build cd CPP/7zip/Bundles/LzmaCon make %{?_smp_mflags} -f makefile.gcc clean all %install mkdir -p %{buildroot}%{_libdir} install -m0755 CPP/7zip/Bundles/LzmaCon/liblzmasdk.so.%{_maver}.%{_miver} %{buildroot}%{_libdir} pushd %{buildroot}%{_libdir} ln -s liblzmasdk.so.%{version} liblzmasdk.so.%{_maver} ln -s liblzmasdk.so.%{version} liblzmasdk.so popd mkdir -p %{buildroot}/%{_includedir}/lzma%{_sver}/ find -iname '*.h' | xargs -I {} install -m0644 -D {} %{buildroot}/%{_includedir}/lzma-sdk/{} # creates support file for pkg-config mkdir %{buildroot}/%{_libdir}/pkgconfig tee %{buildroot}/%{_libdir}/pkgconfig/lzma-sdk.pc << "EOF" prefix=%{_prefix} exec_prefix=${prefix} libdir=${exec_prefix}/%{_lib} includedir=${prefix}/include Name: lzma-sdk Description: SDK for lzma compression Version: %{version} Libs: -L${libdir} -llzmasdk Cflags: -I${includedir}/lzma-sdk EOF %fdupes -s %{buildroot}/%{_includedir}/lzma-sdk %post -n liblzmasdk%{_maver} -p /sbin/ldconfig %postun -n liblzmasdk%{_maver} -p /sbin/ldconfig %files -n liblzmasdk%{_maver} %defattr(-,root,root) %doc DOC/lzma.txt DOC/lzma-history.txt lzma-sdk-LICENSE.fedora %{_libdir}/liblzmasdk.so.%{_maver}.%{_miver} %{_libdir}/liblzmasdk.so.%{_maver} %files devel %defattr(-,root,root) %doc DOC/7z*.txt DOC/Methods.txt lzma-sdk-LICENSE.fedora %{_includedir}/lzma-sdk/ %{_libdir}/liblzmasdk.so %{_libdir}/pkgconfig/lzma-sdk.pc %changelog