DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros
@ 2013-05-07 15:30 Thomas Monjalon
  2013-05-17  9:12 ` Olivier MATZ
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Monjalon @ 2013-05-07 15:30 UTC (permalink / raw)
  To: dev

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>
---
 lib/librte_eal/common/include/rte_eal.h     |    1 -
 lib/librte_eal/common/include/rte_version.h |   17 +++++++++++++++--
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/lib/librte_eal/common/include/rte_eal.h b/lib/librte_eal/common/include/rte_eal.h
index 58fa1cc..9aa5de8 100644
--- a/lib/librte_eal/common/include/rte_eal.h
+++ b/lib/librte_eal/common/include/rte_eal.h
@@ -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. */
 
 /**
diff --git a/lib/librte_eal/common/include/rte_version.h b/lib/librte_eal/common/include/rte_version.h
index b29c1d3..0ef475f 100644
--- a/lib/librte_eal/common/include/rte_version.h
+++ b/lib/librte_eal/common/include/rte_version.h
@@ -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
-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros
  2013-05-07 15:30 [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros Thomas Monjalon
@ 2013-05-17  9:12 ` Olivier MATZ
  2013-05-17 14:46   ` Thomas Monjalon
  0 siblings, 1 reply; 4+ messages in thread
From: Olivier MATZ @ 2013-05-17  9:12 UTC (permalink / raw)
  To: dev

Hi Thomas,

> @@ -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

In this patch, do you think it could be useful to add
a #ifdef RTE_VER_PATCH_RELEASE ? The idea is to return
"1.2.3" if there is no patch release and "1.2.3r4" in
the dpdk.org case. As a result this patch would be integrable
in Intel DPDK mainline.

The other lines of the patch look good to me.

Olivier

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros
  2013-05-17  9:12 ` Olivier MATZ
@ 2013-05-17 14:46   ` Thomas Monjalon
  2013-05-17 15:02     ` Olivier MATZ
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Monjalon @ 2013-05-17 14:46 UTC (permalink / raw)
  To: Olivier MATZ; +Cc: dev

17/05/2013 11:12, Olivier MATZ :
> > @@ -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);
> > 
> >  }
> 
> In this patch, do you think it could be useful to add
> a #ifdef RTE_VER_PATCH_RELEASE ? The idea is to return
> "1.2.3" if there is no patch release and "1.2.3r4" in
> the dpdk.org case. As a result this patch would be integrable
> in Intel DPDK mainline.

This patch introduce RTE_VER_PATCH_RELEASE so #ifdef RTE_VER_PATCH_RELEASE is 
always true. I don't see why a commercial version of the DPDK would like to 
apply part of this patch.

-- 
Thomas

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros
  2013-05-17 14:46   ` Thomas Monjalon
@ 2013-05-17 15:02     ` Olivier MATZ
  0 siblings, 0 replies; 4+ messages in thread
From: Olivier MATZ @ 2013-05-17 15:02 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev

Hi Thomas,

> This patch introduce RTE_VER_PATCH_RELEASE so #ifdef RTE_VER_PATCH_RELEASE is 
> always true. I don't see why a commercial version of the DPDK would like to 
> apply part of this patch.

ok this was just a comment in case of.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-05-17 14:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-07 15:30 [dpdk-dev] [PATCH] lib: set version 1.2.3r2 and more helper macros Thomas Monjalon
2013-05-17  9:12 ` Olivier MATZ
2013-05-17 14:46   ` Thomas Monjalon
2013-05-17 15:02     ` Olivier MATZ

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).