Enable IAVF driver to build on Windows as it is required
to build ice PMD.
Disable all other drivers from common directory.
This patch also includes fix for a macro redefinition warning
in the IAVF driver.

Signed-off-by: Pallavi Kadam <pallavi.ka...@intel.com>
Reviewed-by: Ranjit Menon <ranjit.me...@intel.com>
---
 drivers/common/cpt/meson.build       | 6 ++++++
 drivers/common/iavf/iavf_osdep.h     | 9 +++++++++
 drivers/common/meson.build           | 3 ---
 drivers/common/mvep/meson.build      | 6 ++++++
 drivers/common/octeontx/meson.build  | 6 ++++++
 drivers/common/octeontx2/meson.build | 6 ++++++
 drivers/common/qat/meson.build       | 6 ++++++
 drivers/common/sfc_efx/meson.build   | 6 ++++++
 8 files changed, 45 insertions(+), 3 deletions(-)

diff --git a/drivers/common/cpt/meson.build b/drivers/common/cpt/meson.build
index beecf0da3..1127267ba 100644
--- a/drivers/common/cpt/meson.build
+++ b/drivers/common/cpt/meson.build
@@ -1,6 +1,12 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Cavium, Inc
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 sources = files('cpt_fpm_tables.c',
                'cpt_pmd_ops_helper.c')
 
diff --git a/drivers/common/iavf/iavf_osdep.h b/drivers/common/iavf/iavf_osdep.h
index eaefde88e..76c186a5b 100644
--- a/drivers/common/iavf/iavf_osdep.h
+++ b/drivers/common/iavf/iavf_osdep.h
@@ -55,6 +55,15 @@ typedef uint64_t        s64;
 #define __be64          uint64_t
 #endif
 
+/* Avoid macro redefinition warning on Windows */
+#ifdef RTE_EXEC_ENV_WINDOWS
+#ifdef min
+#undef min
+#endif
+#ifdef max
+#undef max
+#endif
+#endif
 #define min(a, b) RTE_MIN(a, b)
 #define max(a, b) RTE_MAX(a, b)
 
diff --git a/drivers/common/meson.build b/drivers/common/meson.build
index ba6325adf..2a0c43054 100644
--- a/drivers/common/meson.build
+++ b/drivers/common/meson.build
@@ -1,9 +1,6 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Cavium, Inc
 
-if is_windows
-       subdir_done()
-endif
 
 std_deps = ['eal']
 drivers = ['cpt', 'dpaax', 'iavf', 'mvep', 'octeontx', 'octeontx2', 'sfc_efx']
diff --git a/drivers/common/mvep/meson.build b/drivers/common/mvep/meson.build
index 7cd968b38..a929e2311 100644
--- a/drivers/common/mvep/meson.build
+++ b/drivers/common/mvep/meson.build
@@ -4,6 +4,12 @@
 # All rights reserved.
 #
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 dep = dependency('libmusdk', required: false, method: 'pkg-config')
 if not dep.found()
        build = false
diff --git a/drivers/common/octeontx/meson.build 
b/drivers/common/octeontx/meson.build
index 203d1ef49..02b57b95c 100644
--- a/drivers/common/octeontx/meson.build
+++ b/drivers/common/octeontx/meson.build
@@ -2,4 +2,10 @@
 # Copyright(c) 2018 Cavium, Inc
 #
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 sources = files('octeontx_mbox.c')
diff --git a/drivers/common/octeontx2/meson.build 
b/drivers/common/octeontx2/meson.build
index 84fb11524..97293d1a7 100644
--- a/drivers/common/octeontx2/meson.build
+++ b/drivers/common/octeontx2/meson.build
@@ -2,6 +2,12 @@
 # Copyright(C) 2019 Marvell International Ltd.
 #
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 if not dpdk_conf.get('RTE_ARCH_64')
        build = false
        reason = 'only supported on 64-bit'
diff --git a/drivers/common/qat/meson.build b/drivers/common/qat/meson.build
index 67f7aca97..3ad7dd501 100644
--- a/drivers/common/qat/meson.build
+++ b/drivers/common/qat/meson.build
@@ -1,6 +1,12 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017-2018 Intel Corporation
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 qat_crypto = true
 qat_crypto_path = 'crypto/qat'
 qat_crypto_relpath = '../../' + qat_crypto_path
diff --git a/drivers/common/sfc_efx/meson.build 
b/drivers/common/sfc_efx/meson.build
index 6cb9f0737..a2dfed0ec 100644
--- a/drivers/common/sfc_efx/meson.build
+++ b/drivers/common/sfc_efx/meson.build
@@ -5,6 +5,12 @@
 # This software was jointly developed between OKTET Labs (under contract
 # for Solarflare) and Solarflare Communications, Inc.
 
+if is_windows
+       build = false
+       reason = 'not supported on Windows'
+       subdir_done()
+endif
+
 if (arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')) and (arch_subdir 
!= 'arm' or not host_machine.cpu_family().startswith('aarch64'))
        build = false
        reason = 'only supported on x86_64 and aarch64'
-- 
2.18.0.windows.1

Reply via email to