autogen: compiler predefines extracted through C++ for all langs
The CMAKE_CXX_COMPILER_PREDEFINES_COMMAND
compiler information variable is used for autogen:
$ git grep '_COMPILER_PREDEFINES_COMMAND' -- Source/ |cat
Source/cmQtAutoGenInitializer.cxx: this->Makefile->GetDefExpandList("CMAKE_CXX_COMPILER_PREDEFINES_COMMAND",
However, CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND
is also set for non-CXX languages to use a .cpp
source:
$ git grep '_COMPILER_PREDEFINES_COMMAND.*-dM' v3.24.2 -- Modules/Compiler
v3.24.2:Modules/Compiler/GNU.cmake: list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "-dM" "-E" "-c" "${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp")
v3.24.2:Modules/Compiler/IBMClang.cmake: list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "-dM" "-E" "-c" "${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp")
v3.24.2:Modules/Compiler/IntelLLVM.cmake: list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "-dM" "-E" "-c" "${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp")
v3.24.2:Modules/Compiler/LCC.cmake: list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "-dM" "-E" "-c" "${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp")
v3.24.2:Modules/Compiler/QCC.cmake: list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "-Wp,-dM" "-E" "-c" "${CMAKE_ROOT}/Modules/CMakeCXXCompilerABI.cpp")
These lines may need "${lang}" STREQUAL "CXX"
conditions.