lib: set version 1.2.3r2 and more helper macros

Applications can test versions, for compatibility, this way:
	#if RTE_VERSION >= RTE_VERSION_NUM(1,2,3,4)
Previous versions can be tested with:
	#ifndef RTE_VERSION_NUM

RTE_VERSION was already defined for use with rte_config.
It is moved in rte_version.h and updated to current version number.

Note that the first tag having this helper will be 1.2.3r2.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Reviewed-by: Olivier Matz <olivier.matz@6wind.com>
This commit is contained in:
Thomas Monjalon 2013-04-16 11:44:12 +02:00
parent 424db0100b
commit b7f9a41636
2 changed files with 15 additions and 3 deletions

View File

@ -50,7 +50,6 @@
extern "C" {
#endif
#define RTE_VERSION 1 /**< The version of the RTE configuration structure. */
#define RTE_MAGIC 19820526 /**< Magic number written by the main partition when ready. */
/**

View File

@ -63,10 +63,22 @@ extern "C" {
*/
#define RTE_VER_PATCH_LEVEL 3
/**
* Patch release number i.e. the w in x.y.zrw
*/
#define RTE_VER_PATCH_RELEASE 2
#define RTE_VERSION_NUM(a,b,c,d) ((a) << 24 | (b) << 16 | (c) << 8 | (d))
#define RTE_VERSION RTE_VERSION_NUM( \
RTE_VER_MAJOR, \
RTE_VER_MINOR, \
RTE_VER_PATCH_LEVEL, \
RTE_VER_PATCH_RELEASE)
#define RTE_VER_PREFIX "RTE"
/**
* Function returning string of version number: "RTE x.y.z"
* Function returning string of version number: "RTE x.y.zrw"
* @return
* string
*/
@ -75,7 +87,8 @@ rte_version(void) {
return RTE_VER_PREFIX" "
RTE_STR(RTE_VER_MAJOR)"."
RTE_STR(RTE_VER_MINOR)"."
RTE_STR(RTE_VER_PATCH_LEVEL);
RTE_STR(RTE_VER_PATCH_LEVEL)"r"
RTE_STR(RTE_VER_PATCH_RELEASE);
}
#ifdef __cplusplus