summaryrefslogtreecommitdiff
path: root/doc/vercmp.8.txt
blob: 188199532807d63550e46e30308115c7823826f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/////
vim:set ts=4 sw=4 syntax=asciidoc noet spell spelllang=en_us:
/////
vercmp(8)
=========

Name
----
vercmp - version comparison utility


Synopsis
--------
'vercmp' [-h] [--help] <version1> <version2>


Description
-----------
'vercmp' is used to determine the relationship between two given version
numbers. It outputs values as follows:

*  < 0 : if ver1 < ver2
*  = 0 : if ver1 == ver2
*  > 0 : if ver1 > ver2

Version comparison operates as follows:

  Alphanumeric:
    1.0a < 1.0b < 1.0beta < 1.0p < 1.0pre < 1.0rc < 1.0 < 1.0.a < 1.0.1
  Numeric:
    1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0

Additionally, version strings can have an 'epoch' value defined that will
overrule any version comparison, unless the epoch values are equal. This is
specified in an `epoch:version-rel` format. For example, `2:1.0-1` is always
greater than `1:3.6-1`.

Keep in mind that the 'pkgrel' is only compared if it is available on both
versions given to this tool. For example, comparing `1.5-1` and `1.5` will
yield 0; comparing `1.5-1` and `1.5-2` will yield < 0 as expected. This is
mainly for supporting versioned dependencies that do not include the 'pkgrel'.


Options
-------
*-h, \--help*::

	Display summary of the available return codes. Must be the first option
	specified.


Examples
--------

  $ vercmp 1 2
  -1

  $ vercmp 2 1
  1

  $ vercmp 2.0-1 1.7-6
  1

  $ vercmp 2.0 2.0-13
  0

  $ vercmp 4.34 1:001
  -1


See Also
--------
linkman:pacman[8], linkman:makepkg[8], linkman:libalpm[3]

include::footer.txt[]