diff --git a/zlib.changes b/zlib.changes index c7cac0a..751d607 100644 --- a/zlib.changes +++ b/zlib.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Mon Jul 13 11:58:44 UTC 2015 - tchvatal@suse.com + +- Require zlib-devel in zlib-devel-static to fix previous change + +------------------------------------------------------------------- +Tue Jun 30 11:30:37 UTC 2015 - tchvatal@suse.com + +- Bring back zlib-devel-static. Needed by binutils + +------------------------------------------------------------------- +Wed Jun 24 09:01:59 UTC 2015 - tchvatal@suse.com + +- Remove zlib-devel-static, nothing should use libz.a anyway. +- Package minizip library, everything using it should now pull + minizip-devel and unbundle it bnc#935864 + ------------------------------------------------------------------- Thu Sep 25 08:04:55 UTC 2014 - tchvatal@suse.com diff --git a/zlib.spec b/zlib.spec index 1b79e28..f92409e 100644 --- a/zlib.spec +++ b/zlib.spec @@ -1,7 +1,7 @@ # # spec file for package zlib # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 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 @@ -32,12 +32,11 @@ Source3: zlib-rpmlintrc Patch0: zlib-1.2.7-improve-longest_match-performance.patch #PATCH-FIX-SUSE: compiler check of varguments passed to gzprintf Patch1: zlib-format.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool BuildRequires: pkgconfig BuildRoot: %{_tmppath}/%{name}-%{version}-build -# bug437293 -%ifarch ppc64 -Obsoletes: zlib-64bit -%endif %description zlib is designed to be a free, general-purpose, legally unencumbered -- that @@ -51,7 +50,7 @@ input data and can be reduced, if necessary, at some cost in compression. %package -n libz1 Summary: Include Files and Libraries mandatory for Development -Group: Development/Languages/C and C++ +Group: System/Libraries Provides: %{name} = %{version}-%{release} Obsoletes: %{name} < %{version}-%{release} @@ -70,12 +69,6 @@ Summary: Include Files and Libraries mandatory for Development Group: Development/Languages/C and C++ Requires: glibc-devel Requires: libz1 = %{version} -Provides: libz:%{_includedir}/zlib.h -# bug437293 -%ifarch ppc64 -Obsoletes: zlib-devel-64bit -%endif -# %description devel This package contains all necessary include files and libraries needed @@ -83,15 +76,31 @@ to develop applications that require the provided includes and libraries. %package devel-static -Summary: Include Files and Libraries mandatory for Development +Summary: Static lib for libz1 library Group: Development/Languages/C and C++ Requires: %{name}-devel = %{version} Provides: %{name}-devel:%{_libdir}/libz.a %description devel-static -This package contains all necessary include files and libraries needed -to develop applications that require the provided includes and -libraries. +Static library for libz1 package, that is complementing the devel package + +%package -n libminizip1 +Summary: Library for manipulation with .zip archives +Group: System/Libraries + +%description -n libminizip1 +Minizip is a library for manipulation with files from .zip archives. + +%package -n minizip-devel +Summary: Development files for the minizip library +Group: Development/Languages/C and C++ +Requires: %{name}-devel = %{version} +Requires: libminizip1 = %{version} +Requires: pkgconfig + +%description -n minizip-devel +This package contains the libraries and header files needed for +developing applications which use minizip. %prep %setup -q @@ -101,30 +110,43 @@ libraries. %build export LDFLAGS="-Wl,-z,relro,-z,now" +export CFLAGS="%{optflags}" +# For sure not autotools build +CC="cc" ./configure \ + --shared \ + --prefix=%{_prefix} \ + --libdir=/%{_lib} + # Marcus: breaks example64 in 32bit builds, so it's disabled by default %if %{with profiling} profiledir=$(mktemp -d) trap "rm -rf $profiledir" EXIT -CC="gcc" ./configure --shared --prefix=%{_prefix} --libdir=/%{_lib} make CFLAGS="%{optflags} %{cflags_profile_generate}=$profiledir" %{?_smp_mflags} -time make check %{?_smp_mflags} -make clean +time make check %{?_smp_mflags} +make %{?_smp_mflags} clean make CFLAGS="%{optflags} %{cflags_profile_feedback}=$profiledir" %{?_smp_mflags} %else -export CFLAGS="%{optflags}" -CC="gcc" ./configure --shared --prefix=%{_prefix} --libdir=/%{_lib} make %{?_smp_mflags} %endif +# And build minizip +cd contrib/minizip +autoreconf -fvi +%configure \ + --disable-static \ + --disable-silent-rules +make %{?_smp_mflags} + %check time make check %{?_smp_mflags} %install mkdir -p %{buildroot}%{_libdir} make DESTDIR=%{buildroot} install %{?_smp_mflags} +# Fix shared library placement/symlinks ln -s -v /%{_lib}/$(readlink %{buildroot}/%{_lib}/libz.so) %{buildroot}%{_libdir}/libz.so rm -v %{buildroot}/%{_lib}/libz.so -# static lib +# Static lib mv %{buildroot}/%{_lib}/libz.a %{buildroot}%{_libdir} # Move .pc file to _libdir mv %{buildroot}/%{_lib}/pkgconfig %{buildroot}%{_libdir} @@ -135,10 +157,19 @@ install -m 644 zutil.h %{buildroot}%{_includedir} mkdir -p %{buildroot}%{_docdir}/%{name} cp -r examples/ %{buildroot}%{_docdir}/%{name}/ +# Install minizip +cd contrib/minizip +make DESTDIR=%{buildroot} install %{?_smp_mflags} +find %{buildroot} -type f -name "*.la" -delete -print + %post -n libz1 -p /sbin/ldconfig %postun -n libz1 -p /sbin/ldconfig +%post -n libminizip1 -p /sbin/ldconfig + +%postun -n libminizip1 -p /sbin/ldconfig + %files -n libz1 %defattr(-,root,root) /%{_lib}/libz.so.1.2.* @@ -157,6 +188,18 @@ cp -r examples/ %{buildroot}%{_docdir}/%{name}/ %{_libdir}/libz.so %{_libdir}/pkgconfig/zlib.pc +%files -n libminizip1 +%defattr(-,root,root) +%doc contrib/minizip/MiniZip64_info.txt contrib/minizip/MiniZip64_Changes.txt +%{_libdir}/libminizip.so.* + +%files -n minizip-devel +%defattr(-,root,root) +%dir %{_includedir}/minizip +%{_includedir}/minizip/*.h +%{_libdir}/libminizip.so +%{_libdir}/pkgconfig/minizip.pc + %files devel-static %defattr(-,root,root) %{_libdir}/libz.a