| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #include "cmCPackPropertiesGenerator.h"
- #include "cmOutputConverter.h"
- cmCPackPropertiesGenerator::cmCPackPropertiesGenerator(
- cmMakefile* mf,
- cmInstalledFile const& installedFile,
- std::vector<std::string> const& configurations):
- cmScriptGenerator("CPACK_BUILD_CONFIG", configurations),
- Makefile(mf),
- InstalledFile(installedFile)
- {
- this->ActionsPerConfig = true;
- }
- void cmCPackPropertiesGenerator::GenerateScriptForConfig(std::ostream& os,
- const std::string& config, Indent const& indent)
- {
- std::string const& expandedFileName =
- this->InstalledFile.GetNameExpression().Evaluate(this->Makefile, config);
- cmInstalledFile::PropertyMapType const& properties =
- this->InstalledFile.GetProperties();
- for(cmInstalledFile::PropertyMapType::const_iterator i = properties.begin();
- i != properties.end(); ++i)
- {
- std::string const& name = i->first;
- cmInstalledFile::Property const& property = i->second;
- os << indent << "set_property(INSTALL " <<
- cmOutputConverter::EscapeForCMake(expandedFileName) << " PROPERTY " <<
- cmOutputConverter::EscapeForCMake(name);
- for(cmInstalledFile::ExpressionVectorType::const_iterator
- j = property.ValueExpressions.begin();
- j != property.ValueExpressions.end(); ++j)
- {
- std::string value = (*j)->Evaluate(this->Makefile, config);
- os << " " << cmOutputConverter::EscapeForCMake(value);
- }
- os << ")\n";
- }
- }
|