[dpdk-dev] [PATCH v8 00/10] HelloWorld example for Windows
Anand Rawat
anand.rawat at intel.com
Tue Apr 2 05:54:48 CEST 2019
Includes Windows-specific EAL changes and meson changes
to build the code on Windows.
v8 Changes:
1. Fixed rte_os.h not found issue on linux and freebsd.
2. Updated make build system to include path for rte_os.h.
3. Fixed math lib error on linux.
4. Separated eal logic and build changes.
v7 Changes:
1. Fixed missing def issues on linux and freebsd.
2. 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:
*This patch is based on https://patches.dpdk.org/patch/52031/
and it is required to cleanly apply patch 3/10
*patch 5/10 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 10/10 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 (10):
eal: eal stub to add windows support
meson: required changes for windows
eal: add new rte_os.h header to build system
eal: update common headers to use rte_os.h
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 | 8 +
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 | 81 +++++
doc/guides/windows_gsg/index.rst | 14 +
doc/guides/windows_gsg/intro.rst | 20 ++
drivers/meson.build | 6 +-
examples/meson.build | 6 +-
kernel/windows/meson.build | 4 +
lib/librte_eal/common/include/rte_common.h | 5 +-
.../common/include/rte_string_fns.h | 4 +-
lib/librte_eal/freebsd/eal/Makefile | 4 +-
lib/librte_eal/freebsd/eal/include/rte_os.h | 14 +
lib/librte_eal/linux/eal/Makefile | 3 +-
lib/librte_eal/linux/eal/include/rte_os.h | 14 +
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 +++++++++
lib/librte_eal/windows/eal/include/fnmatch.h | 48 +++
lib/librte_eal/windows/eal/include/pthread.h | 27 ++
lib/librte_eal/windows/eal/include/regex.h | 90 +++++
lib/librte_eal/windows/eal/include/rte_os.h | 53 +++
lib/librte_eal/windows/eal/include/sched.h | 46 +++
.../windows/eal/include/sys/queue.h | 320 ++++++++++++++++++
lib/librte_eal/windows/eal/include/unistd.h | 12 +
lib/librte_eal/windows/eal/meson.build | 18 +
lib/librte_kvargs/rte_kvargs_exports.def | 7 +
lib/meson.build | 19 +-
meson.build | 6 +-
mk/exec-env/freebsd/rte.vars.mk | 5 +-
mk/exec-env/linux/rte.vars.mk | 5 +-
37 files changed, 1230 insertions(+), 32 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/rte_os.h
create mode 100644 lib/librte_eal/linux/eal/include/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/fnmatch.h
create mode 100644 lib/librte_eal/windows/eal/include/pthread.h
create mode 100644 lib/librte_eal/windows/eal/include/regex.h
create mode 100644 lib/librte_eal/windows/eal/include/rte_os.h
create mode 100644 lib/librte_eal/windows/eal/include/sched.h
create mode 100644 lib/librte_eal/windows/eal/include/sys/queue.h
create mode 100644 lib/librte_eal/windows/eal/include/unistd.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
More information about the dev
mailing list