summaryrefslogtreecommitdiffstats
path: root/Source/CPack
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2006-04-14 12:58:13 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2006-04-14 12:58:13 (GMT)
commitc836be6f7bf92f209adfa1673a8252937ed8e537 (patch)
treeb0377588bfbdc2f4e0a9d0a58aa30b04a0df32c0 /Source/CPack
parent0adee1e6dd4f62bd64ff939f51ac75a07ac9c728 (diff)
downloadCMake-c836be6f7bf92f209adfa1673a8252937ed8e537.zip
CMake-c836be6f7bf92f209adfa1673a8252937ed8e537.tar.gz
CMake-c836be6f7bf92f209adfa1673a8252937ed8e537.tar.bz2
ENH: Start adding support for packaging component and to package into a subdirectory
Diffstat (limited to 'Source/CPack')
-rw-r--r--Source/CPack/cmCPackGenericGenerator.cxx16
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/CPack/cmCPackGenericGenerator.cxx b/Source/CPack/cmCPackGenericGenerator.cxx
index 7669c5f..a26f1e2 100644
--- a/Source/CPack/cmCPackGenericGenerator.cxx
+++ b/Source/CPack/cmCPackGenericGenerator.cxx
@@ -252,9 +252,25 @@ int cmCPackGenericGenerator::InstallProject()
it != cmakeProjectsVector.end();
++it )
{
+ if ( it+1 == cmakeProjectsVector.end() ||
+ it+2 == cmakeProjectsVector.end() ||
+ it+3 == cmakeProjectsVector.end() )
+ {
+ cmCPackLogger(cmCPackLog::LOG_ERROR,
+ "Not enough items on list: CPACK_INSTALL_CMAKE_PROJECTS. "
+ "CPACK_INSTALL_CMAKE_PROJECTS should hold quadruplet of install "
+ "directory, install project name, install component, and install "
+ "subdirectory."
+ << std::endl);
+ return 0;
+ }
std::string installDirectory = it->c_str();
++it;
std::string installProjectName = it->c_str();
+ ++it;
+ std::string installComponent = it->c_str();
+ ++it;
+ std::string installSubDirectory = it->c_str();
std::string installFile = installDirectory + "/cmake_install.cmake";
const char* buildConfig = this->GetOption("CPACK_BUILD_CONFIG");