From: Thomas Monjalon <thomas@monjalon.net>
To: Bruce Richardson <bruce.richardson@intel.com>
Cc: dev@dpdk.org, David Marchand <david.marchand@redhat.com>,
Luca Boccassi <bluca@debian.org>
Subject: Re: [dpdk-dev] [PATCH v3 0/4] One versionfile to rule them all...
Date: Wed, 27 Mar 2019 01:34:03 +0100 [thread overview]
Message-ID: <1931548.fcoo6cO5ln@xps> (raw)
In-Reply-To: <20190315182022.39976-1-bruce.richardson@intel.com>
15/03/2019 19:20, Bruce Richardson:
> Right now with DPDK we have two sources of version information - the
> rte_version.h header file containing macros for C use, and the project
> version number in the project definition in meson.build. This is not
> optimal, so this patchset aims to provide a single source for the DPDK
> version. The options considered are:
>
> * Keep version info in rte_version.h only. The two reasons this was not
> chosen were:
> 1) parsing the version number from the header is awkward, as seen in the
> rte.sdkconfig.mk file, and a script to do so would be needed to
> integrate that into the meson build project definition.
> 2) rte_version.h is not in an obvious location inside the project when
> a user clones from git. It's hidden away in the
> "lib/librte_eal/common/include" folder. Ideally the version number
> should be evident at the top level of the DPDK tree.
>
> * Keep version info in meson.build file only. This seemed a better option
> than keeping the info in rte_version.h, but it still had disadvantages:
> 1) For make, using grep on meson.build to extract the version seemed a
> bit awkward, though doable. Splitting the version was tricky too, but
> manageable with a small amount of scripting.
> 2) There was no easy way to have users access the version number when
> "make showversion" was deprecated with the make build system.
>
> * Store the version number in a new version file at the root level of the
> repo.
> * This did have the advantage of being easily discoverable on clone
> * Still had the disadvantage of needing some parsing to generate the
> defines from rte_version.h
>
> Since the last option seemed best, that is what is implemented in this set.
> The file DPDK_VERSION is added to store the version number, and make and
> meson both use that as their source of version info. For C code, the
> rte_version.h header remains, except that the basic definitions of the
> release YEAR, MONTH, MINOR etc. are moved to be automatically generated as
> part of rte_config.h. For make builds, this is done via using the
> preprocessor to insert the values when it generates the config. For meson
> builds, this is done by just adding the values to the dpdk_conf
> configuration object.
>
> ---
> V3: Reworked following review from Thomas Monjalon. Main change is to how
> the RTE_VER_RELEASE value is computed for non-release candidates.
> Also added int() conversion to each version value to remove leading
> zeros
> V2: Updated following review from David Marchand.
>
> Bruce Richardson (4):
> build: add single source of DPDK version number
> build: move meson version handling to config directory
> build: use version number from config file
> eal: remove unneeded version logic
Applied, thanks
next prev parent reply other threads:[~2019-03-27 0:34 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-07 11:54 [dpdk-dev] [RFC PATCH " Bruce Richardson
2019-03-07 11:54 ` [dpdk-dev] [PATCH 1/4] build: add single source of DPDK version number Bruce Richardson
2019-03-07 12:33 ` David Marchand
2019-03-07 11:54 ` [dpdk-dev] [PATCH 2/4] build: use version number from config file Bruce Richardson
2019-03-07 12:37 ` David Marchand
2019-03-07 12:42 ` David Marchand
2019-03-07 13:12 ` Bruce Richardson
2019-03-07 13:01 ` Bruce Richardson
2019-03-07 11:54 ` [dpdk-dev] [PATCH 3/4] build: move meson version handling to config directory Bruce Richardson
2019-03-07 11:54 ` [dpdk-dev] [PATCH 4/4] eal: remove unneeded version logic Bruce Richardson
2019-03-07 12:09 ` [dpdk-dev] [RFC PATCH 0/4] One versionfile to rule them all Luca Boccassi
2019-03-07 12:14 ` Bruce Richardson
2019-03-07 13:34 ` [dpdk-dev] [PATCH v2 " Bruce Richardson
2019-03-07 13:34 ` [dpdk-dev] [PATCH v2 1/4] build: add single source of DPDK version number Bruce Richardson
2019-03-13 11:06 ` Thomas Monjalon
2019-03-13 11:17 ` Bruce Richardson
2019-03-13 11:23 ` Thomas Monjalon
2019-03-13 11:27 ` Bruce Richardson
2019-03-07 13:35 ` [dpdk-dev] [PATCH v2 2/4] build: use version number from config file Bruce Richardson
2019-03-13 11:13 ` Thomas Monjalon
2019-03-13 11:20 ` Bruce Richardson
2019-03-13 11:24 ` Thomas Monjalon
2019-03-07 13:35 ` [dpdk-dev] [PATCH v2 3/4] build: move meson version handling to config directory Bruce Richardson
2019-03-07 13:35 ` [dpdk-dev] [PATCH v2 4/4] eal: remove unneeded version logic Bruce Richardson
2019-03-15 18:20 ` [dpdk-dev] [PATCH v3 0/4] One versionfile to rule them all Bruce Richardson
2019-03-15 18:20 ` Bruce Richardson
2019-03-15 18:20 ` [dpdk-dev] [PATCH v3 1/4] build: add single source of DPDK version number Bruce Richardson
2019-03-15 18:20 ` Bruce Richardson
2019-03-16 18:01 ` Rami Rosen
2019-03-16 18:01 ` Rami Rosen
2019-03-15 18:20 ` [dpdk-dev] [PATCH v3 2/4] build: move meson version handling to config directory Bruce Richardson
2019-03-15 18:20 ` Bruce Richardson
2019-03-15 18:20 ` [dpdk-dev] [PATCH v3 3/4] build: use version number from config file Bruce Richardson
2019-03-15 18:20 ` Bruce Richardson
2019-03-27 0:27 ` Thomas Monjalon
2019-03-27 0:27 ` Thomas Monjalon
2019-03-15 18:20 ` [dpdk-dev] [PATCH v3 4/4] eal: remove unneeded version logic Bruce Richardson
2019-03-15 18:20 ` Bruce Richardson
2019-03-27 0:34 ` Thomas Monjalon [this message]
2019-03-27 0:34 ` [dpdk-dev] [PATCH v3 0/4] One versionfile to rule them all Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1931548.fcoo6cO5ln@xps \
--to=thomas@monjalon.net \
--cc=bluca@debian.org \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).