set_property: Do not remove a property when APPENDing nothing
This commit is contained in:
parent
cb57ce249e
commit
31bd83e9fc
|
@ -84,12 +84,14 @@ bool cmSetPropertyCommand
|
|||
{
|
||||
doing = DoingNone;
|
||||
this->AppendMode = true;
|
||||
this->Remove = false;
|
||||
this->AppendAsString = false;
|
||||
}
|
||||
else if(*arg == "APPEND_STRING")
|
||||
{
|
||||
doing = DoingNone;
|
||||
this->AppendMode = true;
|
||||
this->Remove = false;
|
||||
this->AppendAsString = true;
|
||||
}
|
||||
else if(doing == DoingNames)
|
||||
|
@ -160,7 +162,7 @@ bool cmSetPropertyCommand::HandleGlobalMode()
|
|||
}
|
||||
if(this->AppendMode)
|
||||
{
|
||||
cm->AppendProperty(name, value, this->AppendAsString);
|
||||
cm->AppendProperty(name, value ? value : "", this->AppendAsString);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -226,7 +228,7 @@ bool cmSetPropertyCommand::HandleDirectoryMode()
|
|||
}
|
||||
if(this->AppendMode)
|
||||
{
|
||||
mf->AppendProperty(name, value, this->AppendAsString);
|
||||
mf->AppendProperty(name, value ? value : "", this->AppendAsString);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -225,6 +225,7 @@ if(BUILD_TESTING)
|
|||
ADD_TEST_MACRO(ObjectLibrary UseCshared)
|
||||
ADD_TEST_MACRO(NewlineArgs NewlineArgs)
|
||||
ADD_TEST_MACRO(SetLang SetLang)
|
||||
ADD_TEST_MACRO(EmptyProperty EmptyProperty)
|
||||
ADD_TEST_MACRO(ExternalOBJ ExternalOBJ)
|
||||
ADD_TEST_MACRO(LoadCommand LoadedCommand)
|
||||
ADD_TEST_MACRO(LinkDirectory bin/LinkDirectory)
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
project (EmptyProperty)
|
||||
|
||||
set_property(DIRECTORY APPEND
|
||||
PROPERTY
|
||||
COMPILE_DEFINITIONS)
|
||||
|
||||
include(CTest)
|
||||
|
||||
add_executable(EmptyProperty EmptyProperty.cxx)
|
|
@ -0,0 +1 @@
|
|||
int main(void) { return 0; }
|
Loading…
Reference in New Issue