build: disable Windows warnings for insecure funtions

Microsoft CRT defines Windows-specific secure alternatives to
standard library functions and triggers warnings when "insecure"
functions are used [1]. However, calling code already has all
necessary checks around those functions, so these warnings are not
useful for DPDK. MinGW provides its own CRT without this issue.

[1]:
https://docs.microsoft.com/en-us/cpp/c-runtime-library/security-features-in-the-crt?view=msvc-160

Disable this by defining -D_CRT_SECURE_NO_WARNINGS.

Signed-off-by: Nick Connolly <nick.connolly@mayadata.io>
Acked-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Acked-by: Pallavi Kadam <pallavi.kadam@intel.com>
This commit is contained in:
Nick Connolly 2020-11-29 16:00:24 +00:00 committed by Thomas Monjalon
parent 498ec3c6da
commit ecc69f98c7

View File

@ -279,6 +279,11 @@ if is_windows
add_project_arguments('-D__USE_MINGW_ANSI_STDIO', language: 'c')
endif
# Disable secure CRT deprecated warnings for clang
if cc.get_id() == 'clang'
add_project_arguments('-D_CRT_SECURE_NO_WARNINGS', language: 'c')
endif
add_project_link_arguments('-lws2_32', language: 'c')
# Contrary to docs, VirtualAlloc2() is exported by mincore.lib