Versioning

Versioning — compile time version checking

Synopsis

#define             ETHOS_MAJOR_VERSION
#define             ETHOS_MINOR_VERSION
#define             ETHOS_MICRO_VERSION
#define             ETHOS_API_VERSION_S
#define             ETHOS_VERSION_S
#define             ETHOS_VERSION_HEX
#define             ETHOS_CHECK_VERSION                 (major,
                                                         minor,
                                                         micro)

Description

Ethos provides some API and definitions for compile-time version checking.

Details

ETHOS_MAJOR_VERSION

#define ETHOS_MAJOR_VERSION      (0)

Major version of Ethos, e.g. 1 in "1.2.3"


ETHOS_MINOR_VERSION

#define ETHOS_MINOR_VERSION      (2)

Minor version of Ethos, e.g. 2 in "1.2.3"


ETHOS_MICRO_VERSION

#define ETHOS_MICRO_VERSION      (2)

Micro version of Ethos, e.g. 3 in "1.2.3"


ETHOS_API_VERSION_S

#define ETHOS_API_VERSION_S      "1.0"

Version of the API of Ethos


ETHOS_VERSION_S

#define ETHOS_VERSION_S          ""

Stringified version of Ethos, e.g. "1.2.3".

Useful for display.


ETHOS_VERSION_HEX

#define             ETHOS_VERSION_HEX

Hexadecimally encoded version of Ethos, e.g. 0x01020300"

Useful for comparisons.


ETHOS_CHECK_VERSION()

#define             ETHOS_CHECK_VERSION(major,minor,micro)

Checks whether the decomposed version (major, minor, micro) is bigger than the version of Ethos. This is a compile-time check only.

major :

major component of the version to check

minor :

minor component of the version to check

micro :

micro component of the version to check