CMakeLists: Disable all warnings for external headers

This lets us avoid needing to wrap external headers with #pragma warning directives for warnings we treat as errors and avoids generating warnings for external code.

Thanks to MerryMage for pointing this out.
This commit is contained in:
Morph 2021-06-28 14:23:41 -04:00
parent 22d7b89c15
commit 248a146ab7

View File

@ -45,6 +45,11 @@ if (MSVC)
/Zc:inline /Zc:inline
/Zc:throwingNew /Zc:throwingNew
# External headers diagnostics
/experimental:external # Enables the external headers options. This option isn't required in Visual Studio 2019 version 16.10 and later
/external:anglebrackets # Treats all headers included by #include <header>, where the header file is enclosed in angle brackets (< >), as external headers
/external:W0 # Sets the default warning level to 0 for external headers, effectively turning off warnings for external headers
# Warnings # Warnings
/W3 /W3
/we4018 # 'expression': signed/unsigned mismatch /we4018 # 'expression': signed/unsigned mismatch