From: Michael Schroeder Date: Wed, 18 Jul 2018 12:43:36 +0000 (+0200) Subject: Update the spec to current standards X-Git-Tag: 0.6.35~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=755462c2b06b079f11d431aa44c7a6146cfea424;p=thirdparty%2Flibsolv.git Update the spec to current standards Based in pull request 250 by Neil Gompa and Tomas Chvatal. --- diff --git a/package/libsolv.changes b/package/libsolv.changes index ee3a9f04..03f381ff 100644 --- a/package/libsolv.changes +++ b/package/libsolv.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------ +Wed Jul 18 14:11:51 UTC 2018 - ngompa13@gmail.com + +- Fix compatibility with Mageia and RH/Fedora + +------------------------------------------------------------------ +Wed Jul 18 11:02:29 UTC 2018 - tchvatal@suse.com + +- Sort a bit with spec-cleaner +- Use python/ruby/etc condition names to match what other packages + do in order to make sure we are enabling/disabling stuff within + prjcfg +- Silence the source unpacking + ------------------------------------------------------------------- Fri Mar 23 12:02:08 CET 2018 - mls@suse.de diff --git a/package/libsolv.spec.in b/package/libsolv.spec.in index 35d0efde..f536bf0c 100644 --- a/package/libsolv.spec.in +++ b/package/libsolv.spec.in @@ -1,7 +1,7 @@ # # spec file for package libsolv # -# Copyright (c) 2017 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2018 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 @@ -15,22 +15,9 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -Name: libsolv -Version: @VERSION@ -Release: 0 -Url: https://github.com/openSUSE/libsolv -Source: libsolv-%{version}.tar.bz2 -BuildRoot: %{_tmppath}/%{name}-%{version}-build +%define libname libsolv@LIBSOLV_SOVERSION@ -%bcond_without enable_static -%bcond_without disable_shared -%bcond_without perl_binding -%bcond_without python_binding -%bcond_without python3_binding -%bcond_without ruby_binding -%bcond_with zypp - -%if 0%{?leap_version} >= 420300 || 0%{?sle_version} >= 120300 || 0%{?suse_version} >= 1330 || !0%{?suse_version} +%if 0%{?sle_version} >= 120300 || 0%{?suse_version} >= 1330 || !0%{?suse_version} %bcond_without bz2 %bcond_without xz %bcond_without zstd @@ -39,33 +26,39 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build %bcond_with xz %bcond_with zstd %endif - %if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?mageia} >= 6 || 0%{?suse_version} >= 1330 %bcond_without richdeps %else %bcond_with richdeps %endif +%bcond_without python3 +%bcond_without python +%bcond_without ruby +%bcond_without perl +%bcond_without static +%bcond_with shared +%bcond_with zypp -%if 0%{?mandriva_version} -# force this version on mandriva -BuildRequires: libneon0.26-devel -%endif -%if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?mageia} -BuildRequires: db-devel -%endif -BuildRequires: libxml2-devel -%if 0%{?suse_version} && 0%{?suse_version} < 1100 -BuildRequires: graphviz -%endif -%if 0%{?suse_version} > 1020 || 0%{?fedora} || 0%{?mageia} -BuildRequires: fdupes -%endif +Name: libsolv +Version: @VERSION@ +Release: 0 +Summary: Package dependency solver using a satisfiability algorithm +License: BSD-3-Clause +Group: Development/Libraries/C and C++ +Url: https://github.com/openSUSE/libsolv +Source: libsolv-%{version}.tar.bz2 BuildRequires: cmake BuildRequires: gcc-c++ +BuildRequires: libxml2-devel BuildRequires: rpm-devel BuildRequires: zlib-devel +BuildRoot: %{_tmppath}/%{name}-%{version}-build -%if %{with perl_binding} +%if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?mageia} +BuildRequires: db-devel +%endif + +%if %{with perl} BuildRequires: perl %if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?mageia} BuildRequires: perl-devel @@ -73,22 +66,23 @@ BuildRequires: perl-devel BuildRequires: swig %endif -%if %{with ruby_binding} +%if %{with ruby} %global ruby_vendorarch %(ruby -r rbconfig -e "puts RbConfig::CONFIG['vendorarchdir'].nil? ? RbConfig::CONFIG['sitearchdir'] : RbConfig::CONFIG['vendorarchdir']") BuildRequires: ruby BuildRequires: ruby-devel BuildRequires: swig %endif -%if %{with python_binding} +%if %{with python} %global python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(True))") BuildRequires: python-devel BuildRequires: swig %endif -%if %{with python3_binding} +%if %{with python3} %global python3_sitearch %(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(True))") BuildRequires: python3-devel +BuildRequires: swig %endif %if %{with bz2} @@ -107,20 +101,17 @@ BuildRequires: xz-devel BuildRequires: libzstd-devel %endif -Summary: Package dependency solver using a satisfiability algorithm -License: BSD-3-Clause -Group: Development/Libraries/C and C++ %description libsolv is a library for solving packages and reading repositories. The solver uses a satisfiability algorithm. -%if !%{with disable_shared} -%package -n libsolv@LIBSOLV_SOVERSION@ +%if %{with shared} +%package -n %{libname} Summary: Package dependency solver using a satisfiability algorithm Group: System/Libraries -%description -n libsolv@LIBSOLV_SOVERSION@ +%description -n %{libname} libsolv is a library for solving packages and reading repositories. It consists of two central blocks: Using a dictionary approach to store and retrieve package and dependency information, and, using a @@ -131,8 +122,8 @@ dependencies. %package devel Summary: Development files for libsolv, a package solver Group: Development/Libraries/C and C++ -%if !%{with disable_shared} -Requires: libsolv@LIBSOLV_SOVERSION@ = %version +%if %{with shared} +Requires: %{libname} = %version %endif Requires: rpm-devel Conflicts: libsatsolver-devel @@ -144,10 +135,9 @@ reading repositories. %package tools Summary: Utilities to work with .solv files Group: System/Management +Conflicts: satsolver-tools-obsolete Obsoletes: satsolver-tools < 0.18 Provides: satsolver-tools = 0.18 -Conflicts: satsolver-tools-obsolete -Requires: gzip bzip2 coreutils findutils %description tools libsolv is a library for solving packages and reading repositories. @@ -159,13 +149,13 @@ files used by libsolv. Summary: Applications demoing the libsolv library Group: System/Management Requires: curl +Conflicts: libsatsolver-demo %if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?mageia} Requires: gnupg2 %endif %if 0%{?suse_version} Requires: gpg2 %endif -Conflicts: libsatsolver-demo %description demo Applications demoing the libsolv library. @@ -178,7 +168,7 @@ Group: Development/Languages/Ruby Ruby bindings for libsolv. %package -n python-solv -%if 0%{?py_requires:1} && %{with python_binding} +%if 0%{?py_requires:1} && %{with python} %py_requires %endif Summary: Python bindings for the libsolv library @@ -195,15 +185,15 @@ Group: Development/Languages/Python Python3 bindings for libsolv. %package -n perl-solv -Requires: perl = %{perl_version} Summary: Perl bindings for the libsolv library Group: Development/Languages/Perl +Requires: perl = %{perl_version} %description -n perl-solv Perl bindings for libsolv. %prep -%setup -n libsolv-%{version} +%setup -q %build export CFLAGS="%{optflags}" @@ -211,13 +201,13 @@ export CXXFLAGS="$CFLAGS" CMAKE_FLAGS= %if 0%{?fedora} || 0%{?rhel} >= 6 -CMAKE_FLAGS="-DFEDORA=1 -DENABLE_APPDATA=1 -DENABLE_COMPS=1" +CMAKE_FLAGS="-DFEDORA=1" %endif %if 0%{?mageia} -CMAKE_FLAGS="-DMAGEIA=1 -DENABLE_APPDATA=1 -DENABLE_COMPS=1" +CMAKE_FLAGS="-DMAGEIA=1" %endif %if 0%{?suse_version} -CMAKE_FLAGS="-DSUSE=1 -DENABLE_APPDATA=1 -DENABLE_COMPS=1" +CMAKE_FLAGS="-DSUSE=1" %endif cmake $CMAKE_FLAGS \ @@ -226,12 +216,14 @@ cmake $CMAKE_FLAGS \ -DCMAKE_VERBOSE_MAKEFILE=TRUE \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DWITH_LIBXML2=1 \ - %{?with_enable_static:-DENABLE_STATIC=1} \ - %{?with_disable_shared:-DDISABLE_SHARED=1} \ - %{?with_perl_binding:-DENABLE_PERL=1} \ - %{?with_python_binding:-DENABLE_PYTHON=1} \ - %{?with_python3_binding:-DENABLE_PYTHON3=1} \ - %{?with_ruby_binding:-DENABLE_RUBY=1} \ + -DENABLE_APPDATA=1 \ + -DENABLE_COMPS=1 \ + %{?with_static:-DENABLE_STATIC=1} \ + %{!?with_shared:-DDISABLE_SHARED=1} \ + %{?with_perl:-DENABLE_PERL=1} \ + %{?with_python:-DENABLE_PYTHON=1} \ + %{?with_python3:-DENABLE_PYTHON3=1} \ + %{?with_ruby:-DENABLE_RUBY=1} \ %{?with_bz2:-DENABLE_BZIP2_COMPRESSION=1} \ %{?with_xz:-DENABLE_LZMA_COMPRESSION=1} \ %{?with_zstd:-DENABLE_ZSTD_COMPRESSION=1} \ @@ -247,27 +239,27 @@ make DESTDIR=%{buildroot} install ln -s repo2solv %{buildroot}/%{_bindir}/repo2solv.sh %if 0%{?suse_version} -%if %{with python_binding} -pushd %{buildroot}/%{python_sitearch} -python %py_libdir/py_compile.py *.py -python -O %py_libdir/py_compile.py *.py -popd +%if %{with python} +%py_compile -O %{buildroot}/%{python_sitearch} %endif -%if %{with python3_binding} +%if %{with python3} %py3_compile %{buildroot}/%{python3_sitearch} %endif %endif -%if %{with disable_shared} +%if %{with static} # we want to leave the .a file untouched export NO_BRP_STRIP_DEBUG=true %endif -%if !%{with disable_shared} -%post -n libsolv@LIBSOLV_SOVERSION@ -p /sbin/ldconfig +%check +make ARGS=--output-on-failure test + +%if %{with shared} +%post -n %{libname} -p /sbin/ldconfig -%postun -n libsolv@LIBSOLV_SOVERSION@ -p /sbin/ldconfig +%postun -n %{libname} -p /sbin/ldconfig -%files -n libsolv@LIBSOLV_SOVERSION@ +%files -n %{libname} %defattr(-,root,root) %license LICENSE* %{_libdir}/libsolv.so.* @@ -286,11 +278,11 @@ export NO_BRP_STRIP_DEBUG=true %files devel %defattr(-,root,root) -%if %{with enable_static} +%if %{with static} %{_libdir}/libsolv.a %{_libdir}/libsolvext.a %endif -%if !%{with disable_shared} +%if %{with shared} %{_libdir}/libsolv.so %{_libdir}/libsolvext.so %endif @@ -307,25 +299,25 @@ export NO_BRP_STRIP_DEBUG=true %defattr(-,root,root) %{_bindir}/solv -%if %{with perl_binding} +%if %{with perl} %files -n perl-solv %defattr(-,root,root) %{perl_vendorarch}/* %endif -%if %{with ruby_binding} +%if %{with ruby} %files -n ruby-solv %defattr(-,root,root) %{ruby_vendorarch}/* %endif -%if %{with python_binding} +%if %{with python} %files -n python-solv %defattr(-,root,root) %{python_sitearch}/* %endif -%if %{with python3_binding} +%if %{with python3} %files -n python3-solv %defattr(-,root,root) %{python3_sitearch}/*solv*