RPM building section of RHL's developer guide

Ville Skyttä ville.skytta at iki.fi
Sun Jul 27 16:43:54 UTC 2003


On Thu, 2003-07-24 at 17:00, Jeff Johnson wrote:

> Current behavior in rpm-4.2.1 (and all future versions of rpm) is
> 	A missing (i.e. unsepcified) Epoch: is exactly equivalent to Epoch: 0.
> 
> Whether you choose to make the Epoch: explicit is a matter of style, the
> version comparison in rpm is now deterministic, the same answer is returned
> every time.

Let's consider a specfile without an explicit Epoch that produces
packages foo and foo-devel.  Does this work in foo-devel with rpm-4.2.1?

   Requires: foo = %{epoch}:%{version}

IIRC it doesn't work in rpm-4.2 and earlier.  It'd be nice if it worked,
in the case of an Epoch bump later the inter-subpackage dependencies
would automagically follow if one doesn't fancy putting the explicit
"Epoch: 0"'s in specfiles.

Also, outputting the 0 in cases of a missing Epoch would be nice too, I
remember trying out rpm-4.2.1 on RHL 9, and trying to install glib and
glib-devel (Epoch: 1, but a buggy requires in -devel; fixed in Severn). 
The error message IIRC was:

   glib = x.x.x is required by glib-devel

...whereas a less confusing one IMHO would have been:

   glib = 0:x.x.x is required by glib-devel

Ditto for "rpm -q --qf '%{epoch}:%{version}-%{release}' foo", does/could
4.2.1 print out "0:x.y-z" instead of "(none):x.y-z" if foo doesn't have
an explicit Epoch?

-- 
\/





More information about the fedora-devel-list mailing list