mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-09-25 04:09:36 +03:00
The variable was only set by the GNU-like compiler modules, so AUTOMOC never generated a moc_predefs.h for compilers targeting the MSVC ABI and moc parsed headers without the compiler's predefined macros. MSVC dumps its predefined macros with '/PD', which needs the conforming preprocessor. Require VS 2019 16.8, because 16.7 and older ignore the flag with warning D9002 and emit no macros at all. clang-cl takes '-dM' through '-Xclang'. Both also echo the preprocessed source, so feed them an empty translation unit. clang with the GNU driver is excluded from 'Compiler/GNU' as well when it simulates MSVC, so give it the usual '-dM -E' command there. Fixes: #28093
4 lines
215 B
C++
4 lines
215 B
C++
// An empty translation unit for CMAKE_<LANG>_COMPILER_PREDEFINES_COMMAND.
|
|
// MSVC-like compilers echo the preprocessed source along with the macro
|
|
// definitions, so the input must contribute no output of its own.
|