summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Monjalon <thomas.monjalon@6wind.com>2013-04-16 11:44:12 +0200
committerThomas Monjalon <thomas.monjalon@6wind.com>2013-07-25 16:08:02 +0200
commitddc532a6cfede62ce677a3b53a579b5bf871d2b7 (patch)
tree205b48d1439ce77f021f0d83e9a7b10e9b1ae17a
parent4dc5801cdab7ed982ec917269e2804f9ff89840c (diff)
downloaddpdk-1.3.1r1.zip
dpdk-1.3.1r1.tar.gz
dpdk-1.3.1r1.tar.xz
lib: set version 1.3.1r1 and more helper macrosv1.3.1r1
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 is 1.2.3r2. Releases 1.3.0r0 and 1.3.1r0 have not this patch. Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> Reviewed-by: Olivier Matz <olivier.matz@6wind.com>
-rw-r--r--lib/librte_eal/common/include/rte_eal.h1
-rw-r--r--lib/librte_eal/common/include/rte_version.h27
2 files changed, 24 insertions, 4 deletions
diff --git a/lib/librte_eal/common/include/rte_eal.h b/lib/librte_eal/common/include/rte_eal.h
index 2445f6b..240530d 100644
--- a/lib/librte_eal/common/include/rte_eal.h
+++ b/lib/librte_eal/common/include/rte_eal.h
@@ -47,7 +47,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. */
/**
diff --git a/lib/librte_eal/common/include/rte_version.h b/lib/librte_eal/common/include/rte_version.h
index 7783693..f5f166d 100644
--- a/lib/librte_eal/common/include/rte_version.h
+++ b/lib/librte_eal/common/include/rte_version.h
@@ -68,13 +68,32 @@ extern "C" {
#define RTE_VER_PATCH_LEVEL 1
/**
+ * Patch release number i.e. the w in x.y.zrw
+ */
+#define RTE_VER_PATCH_RELEASE 1
+
+/**
+ * Macro to compute a version number usable for comparisons
+ */
+#define RTE_VERSION_NUM(a,b,c,d) ((a) << 24 | (b) << 16 | (c) << 8 | (d))
+
+/**
+ * All version numbers in one to compare with RTE_VERSION_NUM()
+ */
+#define RTE_VERSION RTE_VERSION_NUM( \
+ RTE_VER_MAJOR, \
+ RTE_VER_MINOR, \
+ RTE_VER_PATCH_LEVEL, \
+ RTE_VER_PATCH_RELEASE)
+
+/**
* Extra string to be appended to version number,
* for example: pre1, EAR, final etc.
*/
#define RTE_VER_SUFFIX ""
/**
- * Function returning string of version number: "RTE x.y.z"
+ * Function returning string of version number: "RTE x.y.zrw"
* @return
* string
*/
@@ -84,13 +103,15 @@ 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)
"-"RTE_VER_SUFFIX;
else
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