build: fix dependencies lookup

Message ID 20230115165315.1709877-1-thomas@monjalon.net (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series build: fix dependencies lookup |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation warning apply patch failure
ci/iol-testing warning apply patch failure

Commit Message

Thomas Monjalon Jan. 15, 2023, 4:53 p.m. UTC
  The first parameter of the Meson function "find_library()"
should be the library name without the "lib" prefix.

Otherwise Meson prints this warning:
	WARNING: find_library('libexecinfo') starting in "lib"
	only works by accident and is not portable

Fixes: 1cd512b2f532 ("build: detect execinfo library on Linux")
Fixes: e1defba4cf66 ("raw/ifpga/base: support device tree")
Fixes: a489f5dbf437 ("baseband/turbo_sw: support meson build")
Fixes: 72c00ae9dba7 ("regex/cn9k: use cnxk infrastructure")
Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 config/meson.build                    |  4 ++--
 drivers/baseband/turbo_sw/meson.build | 10 +++++-----
 drivers/regex/cn9k/meson.build        |  4 ++--
 3 files changed, 9 insertions(+), 9 deletions(-)
  

Comments

Bruce Richardson Jan. 16, 2023, 9:06 a.m. UTC | #1
On Sun, Jan 15, 2023 at 05:53:15PM +0100, Thomas Monjalon wrote:
> The first parameter of the Meson function "find_library()"
> should be the library name without the "lib" prefix.
> 
> Otherwise Meson prints this warning:
> 	WARNING: find_library('libexecinfo') starting in "lib"
> 	only works by accident and is not portable
> 
> Fixes: 1cd512b2f532 ("build: detect execinfo library on Linux")
> Fixes: e1defba4cf66 ("raw/ifpga/base: support device tree")
> Fixes: a489f5dbf437 ("baseband/turbo_sw: support meson build")
> Fixes: 72c00ae9dba7 ("regex/cn9k: use cnxk infrastructure")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
  
David Marchand Jan. 16, 2023, 9:23 a.m. UTC | #2
On Sun, Jan 15, 2023 at 5:53 PM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> The first parameter of the Meson function "find_library()"
> should be the library name without the "lib" prefix.
>
> Otherwise Meson prints this warning:
>         WARNING: find_library('libexecinfo') starting in "lib"
>         only works by accident and is not portable
>
> Fixes: 1cd512b2f532 ("build: detect execinfo library on Linux")
> Fixes: e1defba4cf66 ("raw/ifpga/base: support device tree")
> Fixes: a489f5dbf437 ("baseband/turbo_sw: support meson build")
> Fixes: 72c00ae9dba7 ("regex/cn9k: use cnxk infrastructure")
> Cc: stable@dpdk.org

This patch depends on
https://patchwork.dpdk.org/project/dpdk/patch/20230108095920.327672-1-thomas@monjalon.net/
which is not marked for backport.
So either the latter is marked for backport too, or the order of those
two patches should be inverted (to make it easier for LTS
maintainers).

Otherwise, it lgtm.


>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
  
Thomas Monjalon Jan. 16, 2023, 10 a.m. UTC | #3
16/01/2023 10:23, David Marchand:
> On Sun, Jan 15, 2023 at 5:53 PM Thomas Monjalon <thomas@monjalon.net> wrote:
> >
> > The first parameter of the Meson function "find_library()"
> > should be the library name without the "lib" prefix.
> >
> > Otherwise Meson prints this warning:
> >         WARNING: find_library('libexecinfo') starting in "lib"
> >         only works by accident and is not portable
> >
> > Fixes: 1cd512b2f532 ("build: detect execinfo library on Linux")
> > Fixes: e1defba4cf66 ("raw/ifpga/base: support device tree")
> > Fixes: a489f5dbf437 ("baseband/turbo_sw: support meson build")
> > Fixes: 72c00ae9dba7 ("regex/cn9k: use cnxk infrastructure")
> > Cc: stable@dpdk.org
> 
> This patch depends on
> https://patchwork.dpdk.org/project/dpdk/patch/20230108095920.327672-1-thomas@monjalon.net/
> which is not marked for backport.

It does not depend really (logically), it is just a patch conflict
because they are changing close lines.

> So either the latter is marked for backport too, or the order of those
> two patches should be inverted (to make it easier for LTS
> maintainers).

I understand what you mean: if this patch is applied first,
it is easier to backport because context did not change compared to old versions.

> Otherwise, it lgtm.

So let's merge it :)
  
Thomas Monjalon Feb. 6, 2023, 11:35 a.m. UTC | #4
16/01/2023 10:23, David Marchand:
> On Sun, Jan 15, 2023 at 5:53 PM Thomas Monjalon <thomas@monjalon.net> wrote:
> >
> > The first parameter of the Meson function "find_library()"
> > should be the library name without the "lib" prefix.
> >
> > Otherwise Meson prints this warning:
> >         WARNING: find_library('libexecinfo') starting in "lib"
> >         only works by accident and is not portable
> >
> > Fixes: 1cd512b2f532 ("build: detect execinfo library on Linux")
> > Fixes: e1defba4cf66 ("raw/ifpga/base: support device tree")
> > Fixes: a489f5dbf437 ("baseband/turbo_sw: support meson build")
> > Fixes: 72c00ae9dba7 ("regex/cn9k: use cnxk infrastructure")
> > Cc: stable@dpdk.org
> 
> This patch depends on
> https://patchwork.dpdk.org/project/dpdk/patch/20230108095920.327672-1-thomas@monjalon.net/
> which is not marked for backport.
> So either the latter is marked for backport too, or the order of those
> two patches should be inverted (to make it easier for LTS
> maintainers).
> 
> Otherwise, it lgtm.

Sorry I messed up, the other patch was merged before.

Applied
  

Patch

diff --git a/config/meson.build b/config/meson.build
index 0c4d1f06e5..bcc711479e 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -191,7 +191,7 @@  if find_libnuma
 endif
 
 has_libfdt = 0
-fdt_dep = cc.find_library('libfdt', required: false)
+fdt_dep = cc.find_library('fdt', required: false)
 if fdt_dep.found() and cc.has_header('fdt.h')
     dpdk_conf.set10('RTE_HAS_LIBFDT', true)
     has_libfdt = 1
@@ -199,7 +199,7 @@  if fdt_dep.found() and cc.has_header('fdt.h')
     dpdk_extra_ldflags += '-lfdt'
 endif
 
-libexecinfo = cc.find_library('libexecinfo', required: false)
+libexecinfo = cc.find_library('execinfo', required: false)
 if libexecinfo.found()
     add_project_link_arguments('-lexecinfo', language: 'c')
     dpdk_extra_ldflags += '-lexecinfo'
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
index 417ec63394..aeb9a76f9e 100644
--- a/drivers/baseband/turbo_sw/meson.build
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -6,11 +6,11 @@  dep_turbo = dependency('flexran_sdk_turbo', required: false)
 dep_dec5g = dependency('flexran_sdk_ldpc_decoder_5gnr', required: false)
 
 if dep_turbo.found()
-    ext_deps += cc.find_library('libstdc++', required: true)
-    ext_deps += cc.find_library('libirc', required: true)
-    ext_deps += cc.find_library('libimf', required: true)
-    ext_deps += cc.find_library('libipps', required: true)
-    ext_deps += cc.find_library('libsvml', required: true)
+    ext_deps += cc.find_library('stdc++', required: true)
+    ext_deps += cc.find_library('irc', required: true)
+    ext_deps += cc.find_library('imf', required: true)
+    ext_deps += cc.find_library('ipps', required: true)
+    ext_deps += cc.find_library('svml', required: true)
     ext_deps += dep_turbo
     ext_deps += dependency('flexran_sdk_crc', required: true)
     ext_deps += dependency('flexran_sdk_rate_matching', required: true)
diff --git a/drivers/regex/cn9k/meson.build b/drivers/regex/cn9k/meson.build
index 06c906710c..19b2e70111 100644
--- a/drivers/regex/cn9k/meson.build
+++ b/drivers/regex/cn9k/meson.build
@@ -8,10 +8,10 @@  if not is_linux or not dpdk_conf.get('RTE_ARCH_64')
     subdir_done()
 endif
 
-lib = cc.find_library('librxp_compiler', required: false)
+lib = cc.find_library('rxp_compiler', required: false)
 if lib.found()
     ext_deps += lib
-    ext_deps += cc.find_library('libstdc++', required: true)
+    ext_deps += cc.find_library('stdc++', required: true)
     cflags += ['-DREE_COMPILER_SDK']
 endif