On 10/27/2017 12:17 PM, Mattias Ellert wrote:
fre 2017-10-27 klockan 11:47 -0400 skrev Steve Dickson:
>
> This makes sense but the reason the libnfsidmap-devel package is not
> be upgraded (or installed) is because:
>
> dnf install /tmp/libnfsidmap-devel*
> Last metadata expiration check: 0:10:48 ago on Fri 27 Oct 2017 11:19:35 AM EDT.
> Error:
> Problem: conflicting requests
> - nothing provides libnfsidmap = 2.2.1-0.fc28 needed by
libnfsidmap-devel-1:2.2.1-0.fc28.x86_64
>
> even though libnfsidmap-2.2.1-0 is installed.
>
> The problem is caused by the Requires: in the libnfsidmap-devel subpackage
>
> %package -n libnfsidmap-devel
> Summary: Development files for the libnfsidmap library
> Group: Development/Libraries
> Requires: pkgconfig
> Requires: libnfsidmap = %{version}-%{release}
> ^^^^^^^^^^^
>
> Now if I remove the '%{version}-%{release}' the package
> is installed/upgraded... but seems wrong to me
> the -devel should be tied to a particular version, right?
>
> Plus this was the way it was in the original libnfsidmap rpm.
>
> tia,
>
> steved.
Your package has epoch defined, so you need to use it when declaring
versioned dependencies between binary packages. 2.2.1-0 is not the same
as 1:2.2.1-0. (And you should use _isa here:
%package -n libnfsidmap-devel
Requires: libnfsidmap%{?_isa} = %{epoch}:%{version}-%{release}
Yup that did the
trick... This is what I ended up with
(No changes to the nfs-utils Requires:, Provides: or Obsoletes:)
%package -n libnfsidmap
Summary: NFSv4 User and Group ID Mapping Library
Provides: libnfsidmap%{?_isa} = %{epoch}:%{version}-%{release}
License: BSD
Group: System Environment/Libraries
BuildRequires: pkgconfig, openldap-devel
BuildRequires: automake, libtool
Requires(postun): /sbin/ldconfig
Requires(pre): /sbin/ldconfig
Requires: openldap
%package -n libnfsidmap-devel
Summary: Development files for the libnfsidmap library
Group: Development/Libraries
Requires: libnfsidmap%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Final question... hopefully :-)
Both packages share the same '%{epoch}:%{version}-%{release}'
So when I fix bug in the nfs-utils code that does
not effect the libnfsidmap code, the %{release} number
on libnfsidmap package will still go up. Vice versa
with the lib code and the nfs-utils %{release}
Question: Update time... I'm assuming that I should just
go ahead update both packages whether they are needed or
not... (assuming the update system will figure that out).
Or should I keep separate '%{version}-%{release}'
for each package??
Again... Thank you very much for all the guidance!
steved.