Le vendredi 29 mars 2019 à 22:25 +0000, Tom Hughes a écrit :
I think something like this would work:
BuildRequires: (x >= 1.3.0 without x = 1.3.2 without x = 1.3.4)
That requires a single package that meets the first condition
but not either of the other two conditions if I'm reading the
documentation correctly.
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.
So I'm going to try
((x >= 1.3.0) without ((x = 1.3.2) or (x = 1.3.4) or (x = 1.5.7)))
which is sure to work semantically, and is more regular and human-
friendly
Of course sure to work semantically does not means sure to work as
implemented in the solver. Will need testing
I anyone has better ideas…
Regards,
--
Nicolas Mailhot