On 30/03/2019 17:08, Nico Kadel-Garcia wrote:
On Sat, Mar 30, 2019 at 4:27 AM Nicolas Mailhot
<nicolas.mailhot(a)laposte.net> wrote:
> Thanks for the suggestion. That may work indeed, depending on rpm
> operator priority. To be sure, you'd need lots of lispy parenthesis (as
> the rpm documentation seems to recommend).
>
> ((((x >= 1.3.0) without x = 1.3.2) without (x = 1.3.4)) without (x = 1.5.7)
>
> Unfortunately both solutions (no parenthesis, cross fingers, lots of
> parenthesis, sure result) are quite human unfriendly.
For legibly and supporting updates, Don't. With a capital D. Just
write 3 distinct statements.
BuildRequires: x >= 1.3.0
BuildRequires: x != 1.3.0
BuildRequires: x != 1.5.7
Is != actually supported? It's not mentioned in the documentation:
https://rpm.org/user_doc/dependencies.html#requires
Also that construction allows different packages to satisfy each
require rather than ensuring that a single package matches them
all. It's only an issue if multiple versions are being packaged
but it does need to be considered.
Tom
--
Tom Hughes (tom(a)compton.nu)
http://compton.nu/