[PATCH v5 0/4] enable use of the MSVC compiler
Tyler Retzlaff
roretzla at linux.microsoft.com
Wed Aug 16 23:56:12 CEST 2023
Introduce minimum changes to the build system to allow use of the MSVC
compiler.
This change is intended to enable a phased approach to allowing DPDK to
built with MSVC. Building with MSVC removes barriers to enterprise
customers use of DPDK who have constraints around security policy,
compliance and functional requirements.
v5:
* Clean up comments in config/meson.build for project arguments and
dpdk_conf defines when is_ms_compiler
* Restore incorrectly removed enabled_apps = [] in v4
v4:
* Remove conditional if cc.get_id() != 'msvc' for assignment of
objdump and binutils_avx512_check in anticipation of merge of
patch from David Marchand
https://patchwork.dpdk.org/project/dpdk/patch/20230811131024.2285366-1-david.marchand@redhat.com
Note:
I'm aware that none of the shell scripts here are usable on the
windows build, it's a gap we hope to fill in the future for now
we hap hazardly rely on the linux builds.
* Remove enabled_apps = [] apps when skipping apps/meson.build for
is_ms_compiler in anticipation of merge of patch from David Marchand
https://patchwork.dpdk.org/project/dpdk/patch/20230811132805.2434448-1-david.marchand@redhat.com
* Rebase series and include 'log' library as it is now required by
kvargs and telemetry libs
* Move 2 comments into block scope ehre they apply
Note:
There are no requirements specifically for msvc compiler
beyond those that would cause build to fail when the
currently experimental options are used. when i know the
final version of the compiler needed it will be documented
in the windows quick start guide.
v3:
* enable compilation with C11 optional atomics
* enable compilation with C23 typeof operator
* disable microsoft secure crt checks (dpdk code fails)
* force use of intrinsics
v2:
* moved checks to skip drivers, apps, usertools directories
in to <dir>/meson.build file and removed conditional
check from root meson.build (patch 3/3)
Tyler Retzlaff (4):
build: unblock the use of the MSVC compiler
build: determine execution environment at config time
build: limit what is built when using MSVC compiler
build: enable MSVC specific compiler options
app/meson.build | 4 ++++
config/meson.build | 47 +++++++++++++++++++++++++++++++++++++++--------
config/x86/meson.build | 10 ++++++----
drivers/meson.build | 4 ++++
lib/eal/meson.build | 8 --------
lib/meson.build | 21 ++++++++++++++++++---
usertools/meson.build | 4 ++++
7 files changed, 75 insertions(+), 23 deletions(-)
--
1.8.3.1
More information about the dev
mailing list