[1/4] build: add single source of DPDK version number

Message ID 20190307115448.54041-2-bruce.richardson@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series One versionfile to rule them all... |

Checks

Context Check Description
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK

Commit Message

Bruce Richardson March 7, 2019, 11:54 a.m. UTC
  Add a new file DPDK_VERSION to hold the current DPDK version number.
Have meson use this file for it's project version, and have make use
it for reporting out "showversion" and "showversionum".

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 DPDK_VERSION        |  1 +
 meson.build         |  2 +-
 mk/rte.sdkconfig.mk | 16 ++--------------
 3 files changed, 4 insertions(+), 15 deletions(-)
 create mode 100644 DPDK_VERSION
  

Comments

David Marchand March 7, 2019, 12:33 p.m. UTC | #1
On Thu, Mar 7, 2019 at 12:55 PM Bruce Richardson <bruce.richardson@intel.com>
wrote:

> Add a new file DPDK_VERSION to hold the current DPDK version number.
> Have meson use this file for it's project version, and have make use
> it for reporting out "showversion" and "showversionum".
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
>  DPDK_VERSION        |  1 +
>  meson.build         |  2 +-
>  mk/rte.sdkconfig.mk | 16 ++--------------
>  3 files changed, 4 insertions(+), 15 deletions(-)
>  create mode 100644 DPDK_VERSION
>
> diff --git a/DPDK_VERSION b/DPDK_VERSION
> new file mode 100644
> index 000000000..c4a4cd00b
> --- /dev/null
> +++ b/DPDK_VERSION
> @@ -0,0 +1 @@
> +19.05.0-rc0
> diff --git a/meson.build b/meson.build
> index 69833de82..757618144 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -2,7 +2,9 @@
>  # Copyright(c) 2017 Intel Corporation
>
>  project('DPDK', 'C',
> -       version: '19.05.0-rc0',
> +       # get version number from file
> +       # use "more" rather than "cat" for windows compatiblity
>

compatibility

+       version: run_command('more',
> files('DPDK_VERSION')).stdout().strip(),
>         license: 'BSD',
>         default_options: ['buildtype=release', 'default_library=static'],
>         meson_version: '>= 0.47.1'
> diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk
> index fa77331cb..8dc31d7cf 100644
> --- a/mk/rte.sdkconfig.mk
> +++ b/mk/rte.sdkconfig.mk
> @@ -3,23 +3,11 @@
>
>  .PHONY: showversion
>  showversion:
> -       @set -- \
> -               $$(sed -rne 's,^#define
> RTE_VER_[A-Z_]*[[:space:]]+([0-9]+).*,\1,p' \
> -                       -e 's,^#define
> RTE_VER_SUFFIX[[:space:]]+"(.*)",\1,p' \
> -
>  $(RTE_SRCDIR)/lib/librte_eal/common/include/rte_version.h) ;\
> -               printf '%d.%02d.%d' "$$1" "$$2" "$$3"; \
> -               if [ -z "$$5" ]; then echo; \
> -               else printf '%s' "$$4"; \
> -                       if [ $$5 -lt 16 ] ; then echo $$5; \
> -                       else echo $$(($$5 - 16)); fi; \
> -               fi
> +       @cat $(RTE_SRCDIR)/DPDK_VERSION
>
>  .PHONY: showversionum
>  showversionum:
> -       @set -- \
> -               $$(sed -rne 's,^#define
> RTE_VER_[A-Z_]*[[:space:]]+([0-9]+).*,\1,p' \
> -
>  $(RTE_SRCDIR)/lib/librte_eal/common/include/rte_version.h); \
> -               printf '%02d%02d\n' "$$1" "$$2"
> +       @cat ${RTE_SRCDIR}/DPDK_VERSION | awk -F '.' '{print $$1$$2}'
>

s/{RTE_SRCDIR}/(RTE_SRCDIR)/


>  INSTALL_CONFIGS := $(sort $(filter-out %~,\
>         $(patsubst $(RTE_SRCDIR)/config/defconfig_%,%,\
>
>
  

Patch

diff --git a/DPDK_VERSION b/DPDK_VERSION
new file mode 100644
index 000000000..c4a4cd00b
--- /dev/null
+++ b/DPDK_VERSION
@@ -0,0 +1 @@ 
+19.05.0-rc0
diff --git a/meson.build b/meson.build
index 69833de82..757618144 100644
--- a/meson.build
+++ b/meson.build
@@ -2,7 +2,9 @@ 
 # Copyright(c) 2017 Intel Corporation
 
 project('DPDK', 'C',
-	version: '19.05.0-rc0',
+	# get version number from file
+	# use "more" rather than "cat" for windows compatiblity
+	version: run_command('more', files('DPDK_VERSION')).stdout().strip(),
 	license: 'BSD',
 	default_options: ['buildtype=release', 'default_library=static'],
 	meson_version: '>= 0.47.1'
diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk
index fa77331cb..8dc31d7cf 100644
--- a/mk/rte.sdkconfig.mk
+++ b/mk/rte.sdkconfig.mk
@@ -3,23 +3,11 @@ 
 
 .PHONY: showversion
 showversion:
-	@set -- \
-		$$(sed -rne 's,^#define RTE_VER_[A-Z_]*[[:space:]]+([0-9]+).*,\1,p' \
-			-e 's,^#define RTE_VER_SUFFIX[[:space:]]+"(.*)",\1,p' \
-			$(RTE_SRCDIR)/lib/librte_eal/common/include/rte_version.h) ;\
-		printf '%d.%02d.%d' "$$1" "$$2" "$$3"; \
-		if [ -z "$$5" ]; then echo; \
-		else printf '%s' "$$4"; \
-			if [ $$5 -lt 16 ] ; then echo $$5; \
-			else echo $$(($$5 - 16)); fi; \
-		fi
+	@cat $(RTE_SRCDIR)/DPDK_VERSION
 
 .PHONY: showversionum
 showversionum:
-	@set -- \
-		$$(sed -rne 's,^#define RTE_VER_[A-Z_]*[[:space:]]+([0-9]+).*,\1,p' \
-			$(RTE_SRCDIR)/lib/librte_eal/common/include/rte_version.h); \
-		printf '%02d%02d\n' "$$1" "$$2"
+	@cat ${RTE_SRCDIR}/DPDK_VERSION | awk -F '.' '{print $$1$$2}'
 
 INSTALL_CONFIGS := $(sort $(filter-out %~,\
 	$(patsubst $(RTE_SRCDIR)/config/defconfig_%,%,\