summaryrefslogtreecommitdiffstats
path: root/Source/CPack/IFW/cmCPackIFWInstaller.cxx
diff options
context:
space:
mode:
authorKonstantin Podsvirov <konstantin@podsvirov.pro>2014-08-12 18:44:02 (GMT)
committerBrad King <brad.king@kitware.com>2014-08-12 19:20:59 (GMT)
commite6496b6023a8f3c471e81b1938580d50b52d3222 (patch)
treedc8d3a9f32a93f6d883cfa5efe463f3479e5c2c2 /Source/CPack/IFW/cmCPackIFWInstaller.cxx
parent1f8cfc3b5f4bd87216e48c6bf909b59f10b9065e (diff)
downloadCMake-e6496b6023a8f3c471e81b1938580d50b52d3222.zip
CMake-e6496b6023a8f3c471e81b1938580d50b52d3222.tar.gz
CMake-e6496b6023a8f3c471e81b1938580d50b52d3222.tar.bz2
CPackIFW: Revise this generator
CPack IFW generator updates: - Group now can have script; - Root package (for monolithic or one package installers) can be configured from group. CMake updates: - Native installation (no Unspecified component).
Diffstat (limited to 'Source/CPack/IFW/cmCPackIFWInstaller.cxx')
-rw-r--r--Source/CPack/IFW/cmCPackIFWInstaller.cxx21
1 files changed, 18 insertions, 3 deletions
diff --git a/Source/CPack/IFW/cmCPackIFWInstaller.cxx b/Source/CPack/IFW/cmCPackIFWInstaller.cxx
index 78b2ffb..fcb07e6 100644
--- a/Source/CPack/IFW/cmCPackIFWInstaller.cxx
+++ b/Source/CPack/IFW/cmCPackIFWInstaller.cxx
@@ -48,9 +48,15 @@ const char *cmCPackIFWInstaller::GetOption(const std::string &op) const
void cmCPackIFWInstaller::ConfigureFromOptions()
{
// Name;
- if (const char* option = GetOption("CPACK_PACKAGE_NAME"))
+ if (const char* optIFW_PACKAGE_NAME =
+ this->GetOption("CPACK_IFW_PACKAGE_NAME"))
{
- Name = option;
+ Name = optIFW_PACKAGE_NAME;
+ }
+ else if (const char* optPACKAGE_NAME =
+ this->GetOption("CPACK_PACKAGE_NAME"))
+ {
+ Name = optPACKAGE_NAME;
}
else
{
@@ -274,7 +280,16 @@ void cmCPackIFWInstaller::GeneratePackageFiles()
cmCPackIFWPackage package;
package.Generator = Generator;
package.Installer = this;
- package.ConfigureFromOptions();
+ // Check package group
+ if (const char* option = GetOption("CPACK_IFW_PACKAGE_GROUP"))
+ {
+ package.ConfigureFromGroup(option);
+ package.ForcedInstallation = "true";
+ }
+ else
+ {
+ package.ConfigureFromOptions();
+ }
package.GeneratePackageFile();
return;
}