From: Bruce Richardson <bruce.richardson@intel.com> To: david.marchand@redhat.com Cc: dev@dpdk.org, Bruce Richardson <bruce.richardson@intel.com>, stable@dpdk.org Subject: [dpdk-dev] [RFC PATCH 3/5] meson: fix compatibility with make build defines Date: Wed, 16 Sep 2020 17:44:27 +0100 Message-ID: <20200916164429.244847-4-bruce.richardson@intel.com> (raw) In-Reply-To: <20200916164429.244847-1-bruce.richardson@intel.com> The defines used to indicate what crypto, compression and eventdev drivers were being built were different to those used in the make build, with meson defining them with "_PMD" at the end, while make defined them with "_PMD" in the middle and the specific driver name at the end. This might cause compatibility issues for applications which used the older defines, which switching to build against new DPDK releases. As well as changing the default to match that of make, meson also special-cases the crypto/compression/event drivers to have both defines provided, and puts in a deprecation notice to allow future removal of the meson-original defines. This ensures compatibility for these macros with both meson and make from older versions. Fixes: dcadbbde8e61 ("crypto/null: build with meson") Fixes: 3c32e89f68e1 ("compress/isal: add skeleton ISA-L compression PMD") Fixes: eca504f318db ("drivers/event: build skeleton and SW drivers with meson") Cc: stable@dpdk.org Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> --- doc/guides/rel_notes/deprecation.rst | 8 ++++++++ drivers/compress/meson.build | 2 +- drivers/crypto/meson.build | 2 +- drivers/event/meson.build | 2 +- drivers/meson.build | 15 +++++++++++++++ 5 files changed, 26 insertions(+), 3 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 52168f7751..5b5a52fa65 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -11,6 +11,14 @@ here. Deprecation Notices ------------------- +* build: The macros defined to indicate which crypto drivers, event drivers + and which compression drivers have been + included in the meson build are changing format from + ``RTE_LIBRTE_<name>_PMD`` to ``RTE_LIBRTE_PMD_<name>`` to match those + macros used for the drivers in the make build. Both sets of macros + are present in this release, but those ending in ``_PMD`` will be removed + in a future release, and should not be used. + * meson: The minimum supported version of meson for configuring and building DPDK will be increased to v0.47.1 (from 0.41) from DPDK 19.05 onwards. For those users with a version earlier than 0.47.1, an updated copy of meson diff --git a/drivers/compress/meson.build b/drivers/compress/meson.build index ee883c3f9f..bea1720a0b 100644 --- a/drivers/compress/meson.build +++ b/drivers/compress/meson.build @@ -8,5 +8,5 @@ endif drivers = ['isal', 'octeontx', 'qat', 'zlib'] std_deps = ['compressdev'] # compressdev pulls in all other needed deps -config_flag_fmt = 'RTE_LIBRTE_@0@_PMD' +config_flag_fmt = 'RTE_LIBRTE_PMD_@0@' driver_name_fmt = 'rte_pmd_@0@' diff --git a/drivers/crypto/meson.build b/drivers/crypto/meson.build index a2423507ad..25b99c19cb 100644 --- a/drivers/crypto/meson.build +++ b/drivers/crypto/meson.build @@ -26,5 +26,5 @@ drivers = ['aesni_gcm', 'zuc'] std_deps = ['cryptodev'] # cryptodev pulls in all other needed deps -config_flag_fmt = 'RTE_LIBRTE_@0@_PMD' +config_flag_fmt = 'RTE_LIBRTE_PMD_@0@' driver_name_fmt = 'rte_pmd_@0@' diff --git a/drivers/event/meson.build b/drivers/event/meson.build index ebe76a75c4..f2a3431472 100644 --- a/drivers/event/meson.build +++ b/drivers/event/meson.build @@ -11,5 +11,5 @@ if not (toolchain == 'gcc' and cc.version().version_compare('<4.8.6') and drivers += 'octeontx' endif std_deps = ['eventdev', 'kvargs'] -config_flag_fmt = 'RTE_LIBRTE_@0@_EVENTDEV_PMD' +config_flag_fmt = 'RTE_LIBRTE_PMD_@0@_EVENTDEV' driver_name_fmt = 'rte_pmd_@0@_event' diff --git a/drivers/meson.build b/drivers/meson.build index 5f95265573..b5ac483d31 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -117,6 +117,21 @@ foreach subpath:subdirs fmt_name = name endif dpdk_conf.set(config_flag_fmt.format(fmt_name.to_upper()),1) + # for driver compatibility, since we changed the + # default to match that of make. Remove in future release + # after following deprecation process + if config_flag_fmt.contains('_PMD_@0@') and (class == 'crypto' + or class == 'compress' + or class == 'event') + alt_flag_fmt = '_@0@_PMD'.join( + config_flag_fmt.split('_PMD_@0@')) + if config_flag_fmt.contains('EVENTDEV') + alt_flag_fmt = '_@0@_EVENTDEV_PMD'.join( + config_flag_fmt.split('_PMD_@0@_EVENTDEV')) + endif + dpdk_conf.set(alt_flag_fmt.format( + fmt_name.to_upper()), 1) + endif lib_name = driver_name_fmt.format(fmt_name) dpdk_extra_ldflags += pkgconfig_extra_libs -- 2.25.1
next prev parent reply other threads:[~2020-09-16 16:45 UTC|newest] Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-16 16:44 [dpdk-dev] [RFC PATCH 0/5] rework feature enabling macros for compatibility Bruce Richardson 2020-09-16 16:44 ` [dpdk-dev] [RFC PATCH 1/5] app: fix missing dependencies Bruce Richardson 2020-09-16 16:44 ` [dpdk-dev] [RFC PATCH 2/5] examples/l2fwd-crypto: fix missing dependency Bruce Richardson 2020-09-16 16:44 ` Bruce Richardson [this message] 2020-09-16 16:44 ` [dpdk-dev] [RFC PATCH 4/5] build: add defines for compatibility with make build Bruce Richardson 2020-09-16 16:44 ` [dpdk-dev] [RFC PATCH 5/5] build: replace use of old build macros Bruce Richardson 2020-09-17 17:59 ` [dpdk-dev] [RFC PATCH 0/5] rework feature enabling macros for compatibility Andrew Rybchenko 2020-09-18 8:41 ` Bruce Richardson 2020-09-18 8:59 ` Andrew Rybchenko 2020-09-18 12:19 ` Ferruh Yigit 2020-09-23 12:46 ` Thomas Monjalon 2020-09-30 16:49 ` Richardson, Bruce 2020-09-30 17:31 ` Thomas Monjalon 2020-09-18 15:12 ` David Marchand 2020-09-30 16:12 ` Ferruh Yigit 2020-09-30 16:19 ` Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 0/8] Rework build macros Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 1/8] app: fix missing dependencies Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 2/8] examples/l2fwd-crypto: fix missing dependency Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 3/8] build: add defines for compatibility with make build Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 4/8] qat: build from common folder Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 5/8] build: remove library name from version map filename Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 6/8] build: standardize component names and defines Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 7/8] build: replace use of old build macros Bruce Richardson 2020-10-02 15:58 ` [dpdk-dev] [RFC PATCH v2 8/8] [v21.02] build: remove compatibility build defines Bruce Richardson 2020-10-14 14:12 ` [dpdk-dev] [PATCH v3 0/7] Rework build macros Bruce Richardson 2020-10-14 14:12 ` [dpdk-dev] [PATCH v3 1/7] app: fix missing dependencies Bruce Richardson 2020-10-15 10:32 ` Luca Boccassi 2020-10-14 14:12 ` [dpdk-dev] [PATCH v3 2/7] examples/l2fwd-crypto: fix missing dependency Bruce Richardson 2020-10-15 10:32 ` Luca Boccassi 2020-10-14 14:13 ` [dpdk-dev] [PATCH v3 3/7] build: add defines for compatibility with make build Bruce Richardson 2020-10-15 10:31 ` Luca Boccassi 2020-10-15 11:20 ` Bruce Richardson 2020-10-14 14:13 ` [dpdk-dev] [PATCH v3 4/7] qat: build from common folder Bruce Richardson 2020-10-15 10:32 ` Luca Boccassi 2020-10-14 14:13 ` [dpdk-dev] [PATCH v3 5/7] build: remove library name from version map filename Bruce Richardson 2020-10-15 10:32 ` Luca Boccassi 2020-10-14 14:13 ` [dpdk-dev] [PATCH v3 6/7] build: standardize component names and defines Bruce Richardson 2020-10-15 10:30 ` Luca Boccassi 2020-10-15 11:18 ` Bruce Richardson 2020-10-15 13:05 ` Luca Boccassi 2020-10-15 14:03 ` Bruce Richardson 2020-10-15 15:32 ` Luca Boccassi 2020-10-15 15:34 ` Bruce Richardson 2020-10-14 14:13 ` [dpdk-dev] [PATCH v3 7/7] build: replace use of old build macros Bruce Richardson 2020-10-15 10:32 ` Luca Boccassi 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 0/8] Rework " Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 1/8] app: fix missing dependencies Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 2/8] examples/l2fwd-crypto: fix missing dependency Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 3/8] build: add defines for compatibility with make build Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 4/8] qat: build from common folder Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 5/8] build: remove library name from version map filename Bruce Richardson 2020-10-18 11:56 ` Xu, Rosen 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 6/8] devtools/test-null: load all drivers from directory Bruce Richardson 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 7/8] build: standardize component names and defines Bruce Richardson 2020-10-18 11:55 ` Xu, Rosen 2020-10-15 11:03 ` [dpdk-dev] [PATCH v4 8/8] build: replace use of old build macros Bruce Richardson 2020-10-18 11:55 ` Xu, Rosen 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 0/8] Rework " Bruce Richardson 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 1/8] app: fix missing dependencies Bruce Richardson 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 2/8] examples/l2fwd-crypto: fix missing dependency Bruce Richardson 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 3/8] build: add defines for compatibility with make build Bruce Richardson 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 4/8] qat: build from common folder Bruce Richardson 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 5/8] build: remove library name from version map filename Bruce Richardson 2020-10-15 15:28 ` Andrew Rybchenko 2020-10-19 20:04 ` Thomas Monjalon 2020-10-18 9:24 ` Xu, Rosen 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 6/8] devtools/test-null: load all drivers from directory Bruce Richardson 2020-10-19 16:58 ` Thomas Monjalon 2020-10-20 8:37 ` Bruce Richardson 2020-10-20 10:01 ` Thomas Monjalon 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 7/8] build: standardize component names and defines Bruce Richardson 2020-10-15 15:32 ` Andrew Rybchenko 2020-10-15 15:35 ` Bruce Richardson 2020-10-18 9:21 ` Xu, Rosen 2020-10-15 15:05 ` [dpdk-dev] [PATCH v5 8/8] build: replace use of old build macros Bruce Richardson 2020-10-15 15:34 ` Andrew Rybchenko 2020-10-18 9:23 ` Xu, Rosen 2020-10-19 19:03 ` Thomas Monjalon 2020-10-19 20:27 ` [dpdk-dev] [PATCH v5 0/8] Rework " Thomas Monjalon 2020-10-20 7:17 ` David Marchand 2020-10-20 8:37 ` Bruce Richardson
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=20200916164429.244847-4-bruce.richardson@intel.com \ --to=bruce.richardson@intel.com \ --cc=david.marchand@redhat.com \ --cc=dev@dpdk.org \ --cc=stable@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
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git