[oe] versions in RDEPENDS etc.

Graham Gower graham.gower at gmail.com
Wed Nov 17 23:01:53 UTC 2010


On 18 November 2010 01:07, Andreas Oberritter <obi at opendreambox.org> wrote:
> Hi all,
>
> looking for examples in Git, I found the following entries using
> "(<$version)":
>
>> $ git grep -E '^(RDEPENDS|RPROVIDES|RRECOMMENDS|RSUGGESTS|RREPLACES|RCONFLICTS)'  | grep '<'
>> recipes/networkmanager/netm-cli_0.2.bb:RDEPENDS_${PN} = "python-dbus python-pygobject python-textutils networkmanager (>=0.6) networkmanager (<0.7)"
>> recipes/wireshark/wireshark_1.2.6.bb:RCONFLICTS_${PN}-tshark = "tshark wireshark (<1.0.5)"
>> recipes/wireshark/wireshark_1.2.6.bb:RREPLACES_${PN}-tshark = "tshark wireshark (<1.0.5)"
>> recipes/wireshark/wireshark_1.2.6.bb:RCONFLICTS_${PN}-wireshark = "tshark wireshark (<1.0.5)"
>> recipes/wireshark/wireshark_1.2.6.bb:RREPLACES_${PN}-wireshark = "tshark wireshark (<1.0.5)"
>> recipes/wireshark/wireshark_1.2.6.bb:RCONFLICTS_${PN} = "tshark wireshark (<1.0.5)"
>> recipes/wireshark/wireshark_1.2.6.bb:RREPLACES_${PN} = "tshark wireshark (<1.0.5)"
>
> From what I've read, the control file format of opkg should match the
> control file format of debian packages. Also, it looks like the
> variables grepped for above are written unmodifed to control files.
>
> The Debian Policy Manual [1] states: "The relations allowed are <<, <=,
> =, >= and >> for strictly earlier, earlier or equal, exactly equal,
> later or equal and strictly later, respectively. The deprecated forms <
> and > were used to mean earlier/later or equal, rather than strictly
> earlier/later, so they should not appear in new packages (though dpkg
> still supports them)."
>
> Also: "For consistency and in case of future changes to dpkg it is
> recommended that a single space be used after a version relationship and
> before a version number;"

Opkg treats < and > the same as <= and >=, just like dpkg.

> Should the recipes be updated accordingly? Would such changes require PR
> bumps?

I think it would be prudent to determine if these dependencies were
meant to be << or <=. I guess it is unlikely that they mean <=, given
the common understanding of the '<' operator in other languages and
the deprecated nature of this operator in the debian policy manual.


> Regards,
> Andreas
>
> [1] http://www.debian.org/doc/debian-policy/ch-relationships.html
>

-Graham




More information about the Openembedded-devel mailing list