[v2] build: exclude rather than include libs in MSVC build

Message ID 1712168600-17289-2-git-send-email-roretzla@linux.microsoft.com (mailing list archive)
State New
Delegated to: Thomas Monjalon
Headers
Series [v2] build: exclude rather than include libs in MSVC build |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/github-robot: build success github build: passed
ci/intel-Functional success Functional PASS
ci/iol-abi-testing success Testing PASS
ci/iol-sample-apps-testing success Testing PASS
ci/iol-compile-amd64-testing success Testing PASS
ci/iol-unit-arm64-testing success Testing PASS
ci/iol-unit-amd64-testing success Testing PASS
ci/iol-compile-arm64-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS

Commit Message

Tyler Retzlaff April 3, 2024, 6:23 p.m. UTC
  Some libraries that could be built with MSVC were not being built.

Switch from explicit include to exclude of libs to get immediate CI
coverage of libraries that already work with MSVC Windows builds.

Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
---
 lib/argparse/meson.build |  6 ++++++
 lib/dmadev/meson.build   |  6 ++++++
 lib/fib/meson.build      |  6 ++++++
 lib/lpm/meson.build      |  6 ++++++
 lib/mbuf/meson.build     |  6 ++++++
 lib/mempool/meson.build  |  6 ++++++
 lib/meson.build          | 10 ----------
 lib/mldev/meson.build    |  6 ++++++
 lib/rcu/meson.build      |  6 ++++++
 lib/stack/meson.build    |  6 ++++++
 10 files changed, 54 insertions(+), 10 deletions(-)
  

Comments

Morten Brørup April 3, 2024, 6:50 p.m. UTC | #1
> From: Tyler Retzlaff [mailto:roretzla@linux.microsoft.com]
> Sent: Wednesday, 3 April 2024 20.23
> 
> Some libraries that could be built with MSVC were not being built.
> 
> Switch from explicit include to exclude of libs to get immediate CI
> coverage of libraries that already work with MSVC Windows builds.
> 
> Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
> ---

Acked-by: Morten Brørup <mb@smartsharesystems.com>
  
Patrick Robb April 11, 2024, 5:01 a.m. UTC | #2
Recheck-request: iol-intel-Functional


On Wed, Apr 3, 2024 at 2:23 PM Tyler Retzlaff
<roretzla@linux.microsoft.com> wrote:
>
> Some libraries that could be built with MSVC were not being built.
>
> Switch from explicit include to exclude of libs to get immediate CI
> coverage of libraries that already work with MSVC Windows builds.
>
> Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
>  lib/argparse/meson.build |  6 ++++++
>  lib/dmadev/meson.build   |  6 ++++++
>  lib/fib/meson.build      |  6 ++++++
>  lib/lpm/meson.build      |  6 ++++++
>  lib/mbuf/meson.build     |  6 ++++++
>  lib/mempool/meson.build  |  6 ++++++
>  lib/meson.build          | 10 ----------
>  lib/mldev/meson.build    |  6 ++++++
>  lib/rcu/meson.build      |  6 ++++++
>  lib/stack/meson.build    |  6 ++++++
>  10 files changed, 54 insertions(+), 10 deletions(-)
>
> diff --git a/lib/argparse/meson.build b/lib/argparse/meson.build
> index b6a08ca..8ab4c40 100644
> --- a/lib/argparse/meson.build
> +++ b/lib/argparse/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2024 HiSilicon Limited.
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_argparse.c')
>  headers = files('rte_argparse.h')
>
> diff --git a/lib/dmadev/meson.build b/lib/dmadev/meson.build
> index 62b0650..e66dcb6 100644
> --- a/lib/dmadev/meson.build
> +++ b/lib/dmadev/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2021 HiSilicon Limited.
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_dmadev.c', 'rte_dmadev_trace_points.c')
>  headers = files('rte_dmadev.h')
>  indirect_headers += files('rte_dmadev_core.h', 'rte_dmadev_trace_fp.h')
> diff --git a/lib/fib/meson.build b/lib/fib/meson.build
> index ddcae06..6795f41 100644
> --- a/lib/fib/meson.build
> +++ b/lib/fib/meson.build
> @@ -2,6 +2,12 @@
>  # Copyright(c) 2018 Vladimir Medvedkin <medvedkinv@gmail.com>
>  # Copyright(c) 2019 Intel Corporation
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_fib.c', 'rte_fib6.c', 'dir24_8.c', 'trie.c')
>  headers = files('rte_fib.h', 'rte_fib6.h')
>  deps += ['rib']
> diff --git a/lib/lpm/meson.build b/lib/lpm/meson.build
> index 4cd4888..ae30f80 100644
> --- a/lib/lpm/meson.build
> +++ b/lib/lpm/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2017 Intel Corporation
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_lpm.c', 'rte_lpm6.c')
>  headers = files('rte_lpm.h', 'rte_lpm6.h')
>  # since header files have different names, we can install all vector headers
> diff --git a/lib/mbuf/meson.build b/lib/mbuf/meson.build
> index 0435c5e..2cee905 100644
> --- a/lib/mbuf/meson.build
> +++ b/lib/mbuf/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2017 Intel Corporation
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files(
>          'rte_mbuf.c',
>          'rte_mbuf_ptype.c',
> diff --git a/lib/mempool/meson.build b/lib/mempool/meson.build
> index 8099a56..acce66c 100644
> --- a/lib/mempool/meson.build
> +++ b/lib/mempool/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2017 Intel Corporation
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  extra_flags = []
>
>  foreach flag: extra_flags
> diff --git a/lib/meson.build b/lib/meson.build
> index 179a272..94d2b72 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -68,16 +68,6 @@ libraries = [
>          'node',
>  ]
>
> -if is_ms_compiler
> -    libraries = [
> -            'log',
> -            'kvargs',
> -            'telemetry',
> -            'eal',
> -            'ring',
> -    ]
> -endif
> -
>  always_enable = [
>          'cmdline',
>          'eal',
> diff --git a/lib/mldev/meson.build b/lib/mldev/meson.build
> index 0079ccd..2c933ba 100644
> --- a/lib/mldev/meson.build
> +++ b/lib/mldev/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright (c) 2022 Marvell.
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files(
>          'rte_mldev_pmd.c',
>          'rte_mldev.c',
> diff --git a/lib/rcu/meson.build b/lib/rcu/meson.build
> index 09abc52..71143f5 100644
> --- a/lib/rcu/meson.build
> +++ b/lib/rcu/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2018 Arm Limited
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_rcu_qsbr.c')
>  headers = files('rte_rcu_qsbr.h')
>
> diff --git a/lib/stack/meson.build b/lib/stack/meson.build
> index 18177a7..7631a14 100644
> --- a/lib/stack/meson.build
> +++ b/lib/stack/meson.build
> @@ -1,6 +1,12 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2019 Intel Corporation
>
> +if is_ms_compiler
> +    build = false
> +    reason = 'not supported building with Visual Studio Toolset'
> +    subdir_done()
> +endif
> +
>  sources = files('rte_stack.c', 'rte_stack_std.c', 'rte_stack_lf.c')
>  headers = files('rte_stack.h')
>  # subheaders, not for direct inclusion by apps
> --
> 1.8.3.1
>
  

Patch

diff --git a/lib/argparse/meson.build b/lib/argparse/meson.build
index b6a08ca..8ab4c40 100644
--- a/lib/argparse/meson.build
+++ b/lib/argparse/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2024 HiSilicon Limited.
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_argparse.c')
 headers = files('rte_argparse.h')
 
diff --git a/lib/dmadev/meson.build b/lib/dmadev/meson.build
index 62b0650..e66dcb6 100644
--- a/lib/dmadev/meson.build
+++ b/lib/dmadev/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2021 HiSilicon Limited.
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_dmadev.c', 'rte_dmadev_trace_points.c')
 headers = files('rte_dmadev.h')
 indirect_headers += files('rte_dmadev_core.h', 'rte_dmadev_trace_fp.h')
diff --git a/lib/fib/meson.build b/lib/fib/meson.build
index ddcae06..6795f41 100644
--- a/lib/fib/meson.build
+++ b/lib/fib/meson.build
@@ -2,6 +2,12 @@ 
 # Copyright(c) 2018 Vladimir Medvedkin <medvedkinv@gmail.com>
 # Copyright(c) 2019 Intel Corporation
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_fib.c', 'rte_fib6.c', 'dir24_8.c', 'trie.c')
 headers = files('rte_fib.h', 'rte_fib6.h')
 deps += ['rib']
diff --git a/lib/lpm/meson.build b/lib/lpm/meson.build
index 4cd4888..ae30f80 100644
--- a/lib/lpm/meson.build
+++ b/lib/lpm/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017 Intel Corporation
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_lpm.c', 'rte_lpm6.c')
 headers = files('rte_lpm.h', 'rte_lpm6.h')
 # since header files have different names, we can install all vector headers
diff --git a/lib/mbuf/meson.build b/lib/mbuf/meson.build
index 0435c5e..2cee905 100644
--- a/lib/mbuf/meson.build
+++ b/lib/mbuf/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017 Intel Corporation
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files(
         'rte_mbuf.c',
         'rte_mbuf_ptype.c',
diff --git a/lib/mempool/meson.build b/lib/mempool/meson.build
index 8099a56..acce66c 100644
--- a/lib/mempool/meson.build
+++ b/lib/mempool/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017 Intel Corporation
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 extra_flags = []
 
 foreach flag: extra_flags
diff --git a/lib/meson.build b/lib/meson.build
index 179a272..94d2b72 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -68,16 +68,6 @@  libraries = [
         'node',
 ]
 
-if is_ms_compiler
-    libraries = [
-            'log',
-            'kvargs',
-            'telemetry',
-            'eal',
-            'ring',
-    ]
-endif
-
 always_enable = [
         'cmdline',
         'eal',
diff --git a/lib/mldev/meson.build b/lib/mldev/meson.build
index 0079ccd..2c933ba 100644
--- a/lib/mldev/meson.build
+++ b/lib/mldev/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright (c) 2022 Marvell.
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files(
         'rte_mldev_pmd.c',
         'rte_mldev.c',
diff --git a/lib/rcu/meson.build b/lib/rcu/meson.build
index 09abc52..71143f5 100644
--- a/lib/rcu/meson.build
+++ b/lib/rcu/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Arm Limited
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_rcu_qsbr.c')
 headers = files('rte_rcu_qsbr.h')
 
diff --git a/lib/stack/meson.build b/lib/stack/meson.build
index 18177a7..7631a14 100644
--- a/lib/stack/meson.build
+++ b/lib/stack/meson.build
@@ -1,6 +1,12 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2019 Intel Corporation
 
+if is_ms_compiler
+    build = false
+    reason = 'not supported building with Visual Studio Toolset'
+    subdir_done()
+endif
+
 sources = files('rte_stack.c', 'rte_stack_std.c', 'rte_stack_lf.c')
 headers = files('rte_stack.h')
 # subheaders, not for direct inclusion by apps