This is a DRAFT proposal and has not been adopted as official policy by this project.
In order to facilitate the correct use of libtool and the preparation of binary packages for distribution on Debian, Red Hat, etc, it is beneficial to have a written policy on version numbers.
Product version number
These numbers represent the release of the product. E.g. 2.1.2
For the ActiveMQ-CPP project, the numbers have the format MAJOR.MINOR.REVISION, and the following meanings:
Further to the above, it is envisaged that a user who has a packaging system (such as Debian):
libtool ABI version number
This number represents an ABI version. It is an integer, e.g., the number 5.
The ABI version number does not need to be the same as the product version number.
An increment in the libtool version number is mandatory when one of the following occurs:
Note that in the first case above, binary compatibility with existing applications is maintained. In the second and third case, binary compatibility is lost, and the libtool `age' variable must also be changed.