From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 720F4A0679 for ; Fri, 29 Mar 2019 00:24:57 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id EE3312BFA; Fri, 29 Mar 2019 00:24:55 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 17CC323D for ; Fri, 29 Mar 2019 00:24:53 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Mar 2019 16:24:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,282,1549958400"; d="scan'208";a="311303588" Received: from anandraw-devbx.amr.corp.intel.com ([10.19.242.57]) by orsmga005.jf.intel.com with ESMTP; 28 Mar 2019 16:24:52 -0700 From: Anand Rawat To: dev@dpdk.org Cc: anand.rawat@intel.com, pallavi.kadam@intel.com, ranjit.menon@intel.com, jeffrey.b.shaw@intel.com, bruce.richardson@intel.com, thomas@monjalon.net Date: Thu, 28 Mar 2019 16:24:43 -0700 Message-Id: <20190328232451.16988-1-anand.rawat@intel.com> X-Mailer: git-send-email 2.17.1.windows.2 In-Reply-To: <20190306041634.12976-1-anand.rawat@intel.com> References: <20190306041634.12976-1-anand.rawat@intel.com> Subject: [dpdk-dev] [PATCH v7 0/8] HelloWorld example for windows X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Content-Type: text/plain; charset="UTF-8" Message-ID: <20190328232443.ibsofiCno5tfkxBSa4W91MMm_l-MEqu7iyI_p9SEoQI@z> Includes Windows-specific EAL changes and meson changes to build the code on windows. v7 Changes: 1. Fixed rte_os.h not found issue on linux and freebsd. 2. Fixed missing def issues on linux and freebsd. 3. Updated comments in header files to be more descriptive v6 Changes: 1. Introduced rte_os.h for esstential os specific macros and typedefs. 2. Fixed commit typos and 'new line required at eof' issues. v5 Changes: 1. Reduced meson workrounds for windows. 2. Updated documention to include details about buildtool options v4 Changes: 1. Exposed more functions for eal DLL in the module definition file 2. Moved disabling meson logic to sub directories v3 Changes: 1. Separated meson workarounds from the essential code changes 2. Added support for kvargs 3. Updated meson for building DLL on windows using DEF files 4. Fixed documentation for html links and linker dependency 5. Added comments for windows header and source files v2 Changes: 1. Incorporated reviews from v1. 2. Fixed license period for updated files. 3. Renamed 'winapp' folder to 'windows'. 4. Cleaned unneeded meson changes. 5. Fixed code style warnings. 6. Added maintainers information for windows branch notes: *patch 3/8 contains module definition files and meson changes required to build shared libraries on windows. These may be removed in the future releases to be generated from the existing .map files. *patch 8/8 contains meson workarounds to build helloworld on windows, which will later be a part of the draft repository *command-line parsing is not a part of this version as a result lcore mask is currently not supported. *kernel modules and documentation can not be built on windows currently and should not be enabled. Anand Rawat (8): eal: eal stub to add windows support eal: add header files to support os specifics build: add module definition file for windows eal: sys/queue.h implementation for windows eal: add headers for compatibility with windows eal: add minimum viable code for eal on windows doc: add documentation for windows build: meson changes to build on windows MAINTAINERS | 7 + app/meson.build | 6 +- buildtools/meson.build | 6 +- config/meson.build | 23 +- config/x86/meson.build | 14 +- doc/guides/index.rst | 3 +- doc/guides/windows_gsg/build_dpdk.rst | 73 ++++ doc/guides/windows_gsg/index.rst | 14 + doc/guides/windows_gsg/intro.rst | 20 ++ drivers/meson.build | 6 +- examples/meson.build | 8 +- kernel/windows/meson.build | 4 + lib/librte_eal/common/include/rte_common.h | 5 +- .../common/include/rte_string_fns.h | 4 +- .../freebsd/eal/include/exec-env/rte_os.h | 10 + .../linux/eal/include/exec-env/rte_os.h | 8 + lib/librte_eal/meson.build | 6 +- lib/librte_eal/rte_eal_exports.def | 9 + lib/librte_eal/windows/eal/eal.c | 84 +++++ lib/librte_eal/windows/eal/eal_debug.c | 19 ++ lib/librte_eal/windows/eal/eal_lcore.c | 100 ++++++ lib/librte_eal/windows/eal/eal_thread.c | 153 +++++++++ .../windows/eal/include/exec-env/fnmatch.h | 48 +++ .../windows/eal/include/exec-env/pthread.h | 27 ++ .../windows/eal/include/exec-env/regex.h | 90 +++++ .../windows/eal/include/exec-env/rte_os.h | 50 +++ .../windows/eal/include/exec-env/sched.h | 46 +++ .../windows/eal/include/exec-env/unistd.h | 12 + .../windows/eal/include/sys/queue.h | 320 ++++++++++++++++++ lib/librte_eal/windows/eal/meson.build | 18 + lib/librte_kvargs/rte_kvargs_exports.def | 7 + lib/meson.build | 19 +- meson.build | 6 +- 33 files changed, 1198 insertions(+), 27 deletions(-) create mode 100644 doc/guides/windows_gsg/build_dpdk.rst create mode 100644 doc/guides/windows_gsg/index.rst create mode 100644 doc/guides/windows_gsg/intro.rst create mode 100644 kernel/windows/meson.build create mode 100644 lib/librte_eal/freebsd/eal/include/exec-env/rte_os.h create mode 100644 lib/librte_eal/linux/eal/include/exec-env/rte_os.h create mode 100644 lib/librte_eal/rte_eal_exports.def create mode 100644 lib/librte_eal/windows/eal/eal.c create mode 100644 lib/librte_eal/windows/eal/eal_debug.c create mode 100644 lib/librte_eal/windows/eal/eal_lcore.c create mode 100644 lib/librte_eal/windows/eal/eal_thread.c create mode 100644 lib/librte_eal/windows/eal/include/exec-env/fnmatch.h create mode 100644 lib/librte_eal/windows/eal/include/exec-env/pthread.h create mode 100644 lib/librte_eal/windows/eal/include/exec-env/regex.h create mode 100644 lib/librte_eal/windows/eal/include/exec-env/rte_os.h create mode 100644 lib/librte_eal/windows/eal/include/exec-env/sched.h create mode 100644 lib/librte_eal/windows/eal/include/exec-env/unistd.h create mode 100644 lib/librte_eal/windows/eal/include/sys/queue.h create mode 100644 lib/librte_eal/windows/eal/meson.build create mode 100644 lib/librte_kvargs/rte_kvargs_exports.def -- 2.17.1.windows.2