mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-19 11:18:40 +08:00
VS: Teach CMAKE_MFC_FLAG to support generator expressions
This commit is contained in:

committed by
Brad King

parent
558ce94016
commit
c1f1eaf7a4
4
Help/release/dev/genexpr-for-mfc-flag.rst
Normal file
4
Help/release/dev/genexpr-for-mfc-flag.rst
Normal file
@@ -0,0 +1,4 @@
|
||||
genexpr-for-mfc-flag
|
||||
--------------------
|
||||
|
||||
* The :variable:`CMAKE_MFC_FLAG` variable now supports generator expressions.
|
@@ -15,3 +15,6 @@ Usage example:
|
||||
add_definitions(-D_AFXDLL)
|
||||
set(CMAKE_MFC_FLAG 2)
|
||||
add_executable(CMakeSetup WIN32 ${SRCS})
|
||||
|
||||
Contents of ``CMAKE_MFC_FLAG`` may use
|
||||
:manual:`generator expressions <cmake-generator-expressions(7)>`.
|
||||
|
@@ -583,7 +583,7 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(
|
||||
{
|
||||
std::string mfcFlag;
|
||||
if (cmProp p = this->Makefile->GetDefinition("CMAKE_MFC_FLAG")) {
|
||||
mfcFlag = *p;
|
||||
mfcFlag = cmGeneratorExpression::Evaluate(*p, this, configName);
|
||||
} else {
|
||||
mfcFlag = "0";
|
||||
}
|
||||
|
@@ -1224,7 +1224,8 @@ void cmVisualStudio10TargetGenerator::WriteMSToolConfigurationValues(
|
||||
cmGlobalVisualStudio10Generator* gg = this->GlobalGenerator;
|
||||
cmProp mfcFlag = this->Makefile->GetDefinition("CMAKE_MFC_FLAG");
|
||||
if (mfcFlag) {
|
||||
std::string const mfcFlagValue = *mfcFlag;
|
||||
std::string const mfcFlagValue =
|
||||
cmGeneratorExpression::Evaluate(*mfcFlag, this->LocalGenerator, config);
|
||||
|
||||
std::string useOfMfcValue = "false";
|
||||
if (this->GeneratorTarget->GetType() <= cmStateEnums::OBJECT_LIBRARY) {
|
||||
|
@@ -65,3 +65,6 @@ if("${CMAKE_MFC_FLAG}" STREQUAL "2")
|
||||
set(CMAKE_INSTALL_MFC_LIBRARIES ON)
|
||||
include(InstallRequiredSystemLibraries)
|
||||
endif()
|
||||
|
||||
# Encode the value inside a generator expression to test evaluation.
|
||||
set(CMAKE_MFC_FLAG "$<1:${CMAKE_MFC_FLAG}>")
|
||||
|
Reference in New Issue
Block a user