On Fri, 27 Nov 2020 11:36:23 +0000, Nick Connolly wrote: > Compiling with Clang (11.0, --buildtype=debug) for Windows > produces deprecated warnings related to secure crt functions.
Please explain what these warnings mean and why disabling them is OK. FWIW, I examined present warnings and found no useful ones. Also, --buildtype=debug is not necessary to trigger these warnings. Proposed wording (feel free to adjust): 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. > > It is unclear exactly which commit this fixes. It is probably a > consequence of building more libraries for Windows. Tip: Unless you want to make this paragraph part of the commit, you can write such notices below "---" line, like version info. > > Signed-off-by: Nick Connolly <nick.conno...@mayadata.io> > --- > config/meson.build | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/config/meson.build b/config/meson.build > index c02802c18..a3154e29c 100644 > --- a/config/meson.build > +++ b/config/meson.build > @@ -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