diff options
author | Brad King <brad.king@kitware.com> | 2014-12-03 14:32:42 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-12-03 14:32:42 (GMT) |
commit | 1c104c019a23392563befb3564dd5c679cc2c585 (patch) | |
tree | 891880c5fa7b86c0246d2b7704a9180b0ef12adc /Source | |
parent | 7c28e7c17205983ef16d72d4ad6f65649355e805 (diff) | |
parent | 352f246f3ebfd8daf5fda9bad2db01b56fa4bf4d (diff) | |
download | CMake-1c104c019a23392563befb3564dd5c679cc2c585.zip CMake-1c104c019a23392563befb3564dd5c679cc2c585.tar.gz CMake-1c104c019a23392563befb3564dd5c679cc2c585.tar.bz2 |
Merge branch 'vs-phone-store-deployment-location' into release
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmVisualStudio10TargetGenerator.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 5b4bdaf..92ec421 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -1261,6 +1261,7 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf) } std::string deployContent; + std::string deployLocation; if(this->GlobalGenerator->TargetsWindowsPhone() || this->GlobalGenerator->TargetsWindowsStore()) { @@ -1269,6 +1270,12 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf) { toolHasSettings = true; deployContent = content; + + const char* location = sf->GetProperty("VS_DEPLOYMENT_LOCATION"); + if(location && *location) + { + deployLocation = location; + } } } @@ -1283,6 +1290,14 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf) cmGeneratorExpression ge; cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(deployContent); + // Deployment location cannot be set on a configuration basis + if(!deployLocation.empty()) + { + this->WriteString("<Link>", 3); + (*this->BuildFileStream) << deployLocation + << "\\%(FileName)%(Extension)"; + this->WriteString("</Link>\n", 0); + } for(size_t i = 0; i != configs->size(); ++i) { if(0 == strcmp(cge->Evaluate(this->Makefile, (*configs)[i]), "1")) |