Requires, Prereq, and Requires(pre)
Warren Togami
wtogami at redhat.com
Wed Apr 20 12:12:36 UTC 2005
Karsten Hopp wrote:
> Ignacio Vazquez-Abrams wrote:
> ...
>
>>
>>
>>> Prereq: %{_prefix}/X11R6/bin/mkfontdir
>>> BuildPreReq: ncurses-devel readline-devel glibc-devel
>>
>>
>>
>> These should be "Requires(pre)" and "BuildRequires" respectively. And
>> you can drop the glibc-devel.
>
>
> Is there a final decision on that or is that just your preference ?
> We have LOTS of packages in FC which use Prereq: and BuildPreReq:
> instead of
> Requires(pre) and BuildRequires(pre).
There is no difference between BuildRequires and BuildPrereq.
BuildRequires(pre) is simply silly.
However the story behind Requires, Prereq, and Requires(pre) is more
complicated. Apparently Requires and Prereq are now equivalent, but
Requires(pre) is not. This really needs to be explained with detailed
examples and documented once and for all in the Wiki because this is
repeatedly a source of confusion.
In most cases "Requires" is all you need, there is no benefit to using
"Prereq", however there are cases where Requires(pre) is needed to break
a dependency loop. However this may not be the truth for all
distributions, because apparently the behavior of Requires/Prereq
changed recently. This historical behavior and when things changed
should be documented too. I don't know the entire story myself.
Warren Togami
wtogami at redhat.com
More information about the fedora-extras-list
mailing list