On 3/26/2019 3:20 AM, Jerin Jacob Kollanukkaran wrote:
On Mon, 2019-03-25 at 23:02 -0700, Anand Rawat wrote:
Added header files to support windows on x86 platforms.
Updated rte_common.h to include rte_windows.h for windows
build. Updated lib/meson.build to create shared libraries
on windows. Added def file to list the exports for the
eal library.

Signed-off-by: Anand Rawat <anand.ra...@intel.com>
Signed-off-by: Pallavi Kadam <pallavi.ka...@intel.com>
Signed-off-by: Bruce Richardson <bruce.richard...@intel.com>
Reviewed-by: Jeff Shaw <jeffrey.b.s...@intel.com>
Reviewed-by: Ranjit Menon <ranjit.me...@intel.com>
---
  lib/librte_eal/common/include/rte_common.h    |  7 ++++-
  .../common/include/rte_string_fns.h           |  4 ++-
  lib/librte_eal/rte_eal_exports.def            |  9 ++++++
  .../windows/eal/include/rte_windows.h         | 30
+++++++++++++++++++
  lib/librte_eal/windows/eal/meson.build        |  2 ++
  lib/meson.build                               | 19 ++++++++++--
  6 files changed, 66 insertions(+), 5 deletions(-)
  create mode 100644 lib/librte_eal/rte_eal_exports.def
  create mode 100644 lib/librte_eal/windows/eal/include/rte_windows.h

diff --git a/lib/librte_eal/common/include/rte_common.h
b/lib/librte_eal/common/include/rte_common.h
index 7178ba1e9..4775c84f5 100644
--- a/lib/librte_eal/common/include/rte_common.h
+++ b/lib/librte_eal/common/include/rte_common.h
@@ -1,5 +1,5 @@
  /* SPDX-License-Identifier: BSD-3-Clause
- * Copyright(c) 2010-2014 Intel Corporation
+ * Copyright(c) 2010-2019 Intel Corporation
   */
#ifndef _RTE_COMMON_H_
@@ -24,6 +24,11 @@ extern "C" {
#include <rte_config.h> +/* windows specific*/
+#ifdef RTE_EXEC_ENV_WINDOWS
+#include <rte_windows.h>
+#endif
+

IMO, Updating the rte_common.h for each execution environment is not
clean and unnecessary #ifdef clutter in the common code.

I think, it can be fixed by adding new os or eal specific header file
at the following location and simply include it(without any #ifdef)

lib/librte_eal/linux/eal/include/exec-env/rte_eal.h
lib/librte_eal/freebsd/eal/include/exec-env/rte_eal.h
lib/librte_eal/windows/eal/include/exec-env/rte_eal.h # the content of
exiting rte_windows.h goes here.

It can be rte_eal.h or rte_os.h or anything similar.


This was done based on a suggestion from Thomas:
(http://patches.dpdk.org/patch/50844/)

But, I agree. Your suggestion would be a good enhancement. There is already an existing rte_eal.h in common/include, so an rte_os.h or something similar might make sense.

ranjit m.

Reply via email to