dnsmasq: ensure test and rc order as older than final releases dnsmasq-version-ordering
authorJonas Gorski <jonas.gorski@gmail.com>
Sun, 17 Feb 2019 12:04:40 +0000 (13:04 +0100)
committerJonas Gorski <jonas.gorski@gmail.com>
Sun, 17 Feb 2019 12:04:40 +0000 (13:04 +0100)
commit91ba3a9c8708e174e537447517d07adfd29e223e
tree245e003dc9474d9e98e92db0f3346e140b37d6d1
parentca13820d134db3ee4c0c6c75ae9dde2aeb75a905
dnsmasq: ensure test and rc order as older than final releases

Opkg treats text after a a version number as higher than without:

 ~# opkg compare-versions "2.80rc1" "<<" "2.80"; echo $?
 1
 ~# opkg compare-versions "2.80rc1" ">>" "2.80"; echo $?
 0

This causes opkg not offering final release as upgradable version, and
even rufusing to update, since it thinks the installed version is
higher.

This can be mitigated by adding ~ between the version and the text, as ~
will order as less than everything except itself. Since 'r' < 't', to
make sure that test will be treated as lower than rc we add a second ~
before the test tag. That way, the ordering becomes

  2.80~~test < 2.80~rc < 2.80

which then makes opkg properly treat prerelease versions as lower.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
package/network/services/dnsmasq/Makefile