[opensuse-packaging] RPM require version range
Hi, How do I require a version range? E.g. I need lua 5.2.x I tried: BuildRequires: Lua(devel) >= 5.2, Lua(devel) < 5.3 But this will fail with a "Have choice" error, so rpm / buildservice finds lua 5.1 and lua 5.2 for BuildRequire " Lua(devel) < 5.3". So it does not combine the two statements. Regards, Ferdinand -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Monday 04 January 2016, 07:41:16 wrote Ferdinand Thiessen:
Hi,
How do I require a version range? E.g. I need lua 5.2.x I tried:
BuildRequires: Lua(devel) >= 5.2, Lua(devel) < 5.3
But this will fail with a "Have choice" error, so rpm / buildservice finds lua 5.1 and lua 5.2 for BuildRequire " Lua(devel) < 5.3". So it does not combine the two statements.
I would go this way: BuildRequires: lua >= 5.2 Conflicts: lua <5.2 happy new year adrian -- Adrian Schroeter email: adrian@suse.de SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) Maxfeldstraße 5 90409 Nürnberg Germany -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hello, Am Montag, 4. Januar 2016 schrieb Adrian Schröter:
On Monday 04 January 2016, 07:41:16 wrote Ferdinand Thiessen:
How do I require a version range? E.g. I need lua 5.2.x I tried:
BuildRequires: Lua(devel) >= 5.2, Lua(devel) < 5.3
But this will fail with a "Have choice" error, so rpm / buildservice finds lua 5.1 and lua 5.2 for BuildRequire " Lua(devel) < 5.3". So it does not combine the two statements.
I would go this way:
BuildRequires: lua >= 5.2 Conflicts: lua <5.2
I'm afraid that doesn't match Ferdinand's goal - he was asking for 5.2.x and wants to exclude 5.3 or newer. (No idea why he doesn't want 5.3, but that's a different topic.) Basically I see two ways: a) use two BuildRequires: BuildRequires: Lua(devel) >= 5.2 BuildRequires: Lua(devel) < 5.3 b) check if one of the --provides of lua-devel contains something useful: # rpm -q lua-devel lua-devel-5.3.1-3.2.x86_64 # rpm -q --provides lua-devel Lua(devel) = 5.3 config(lua-devel) = 5.3.1-3.2 lua-devel = 5.3.1-3.2 lua-devel(x86-64) = 5.3.1-3.2 pkgconfig(lua) = 5.3.1 So at least for 5.3.1, it seems "Lua(devel)" doesn't include the .1, so you can probably just use BuildRequires: Lua(devel) = 5.2 (check rpm -q --provides of the 5.2.x lua-devel to be really sure) Regards, Christian Boltz -- "Anybody who really thinks /bin/true should report a version number and a help string (or even a copyright notice) needs to get his head examined." [Linus Torvalds] -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hello, Am 04.01.2016 um 12:18 schrieb Christian Boltz:
BuildRequires: Lua(devel) >= 5.2 BuildRequires: Lua(devel) < 5.3
This does not work, it produces: Unresolvable: Have choice for Lua(devel) < 5.3: lua52-devel, lua51-devel Am 04.01.2016 um 12:18 schrieb Christian Boltz:
So at least for 5.3.1, it seems "Lua(devel)" doesn't include the .1, so you can probably just use BuildRequires: Lua(devel) = 5.2
This works only for openSUSE Factory / Tumbleweed, but not for Leap, 13.2 ... Am 04.01.2016 um 18:34 schrieb Greg Freemyer:
BuildRequires: Lua(devel) >= 5.2 Conflicts: Lua(devel) >= 5.3 This works like expected, thanks.
But thank you all for your answers. Best regards, Ferdinand Thiessen -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Mon, Jan 4, 2016 at 1:41 AM, Ferdinand Thiessen <f.thiessen@gmx.de> wrote:
Hi,
How do I require a version range? E.g. I need lua 5.2.x I tried:
BuildRequires: Lua(devel) >= 5.2, Lua(devel) < 5.3
But this will fail with a "Have choice" error, so rpm / buildservice finds lua 5.1 and lua 5.2 for BuildRequire " Lua(devel) < 5.3". So it does not combine the two statements.
I think you need a conflicts statement: BuildRequires: Lua(devel) >= 5.2 Conflicts: Lua(devel) >= 5.3 Greg -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On 04/01/2016 08:41, Ferdinand Thiessen wrote:
Hi,
How do I require a version range? E.g. I need lua 5.2.x I tried:
BuildRequires: Lua(devel) >= 5.2, Lua(devel) < 5.3
But this will fail with a "Have choice" error, so rpm / buildservice finds lua 5.1 and lua 5.2 for BuildRequire " Lua(devel) < 5.3". So it does not combine the two statements.
Regards,
Ferdinand Have you tried #!BuildIgnore: Lua(devel) >= 5.3 BuildRequires: Lua(devel) >= 5.2 #!BuildIgnore: Lua(devel) <= 5.1 It might work, it should give you a version range of 5.2.x
Regards Dave P -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
participants (5)
-
Adrian Schröter
-
Christian Boltz
-
Dave Plater
-
Ferdinand Thiessen
-
Greg Freemyer