ENH: Start adding support for packaging component and to package into a subdirectory
This commit is contained in:
parent
0adee1e6dd
commit
c836be6f7b
|
@ -69,7 +69,7 @@ ENDIF(NOT CPACK_GENERATOR)
|
||||||
# Set some other variables
|
# Set some other variables
|
||||||
cpack_set_if_not_set(CPACK_BINARY_DIR "${CMAKE_BINARY_DIR}")
|
cpack_set_if_not_set(CPACK_BINARY_DIR "${CMAKE_BINARY_DIR}")
|
||||||
cpack_set_if_not_set(CPACK_INSTALL_CMAKE_PROJECTS
|
cpack_set_if_not_set(CPACK_INSTALL_CMAKE_PROJECTS
|
||||||
"${CMAKE_BINARY_DIR};${CMAKE_PROJECT_NAME}")
|
"${CMAKE_BINARY_DIR};${CMAKE_PROJECT_NAME};ALL;/")
|
||||||
cpack_set_if_not_set(CPACK_CMAKE_GENERATOR "${CMAKE_GENERATOR}")
|
cpack_set_if_not_set(CPACK_CMAKE_GENERATOR "${CMAKE_GENERATOR}")
|
||||||
|
|
||||||
SET(_CPACK_UNUSED_VARIABLES_)
|
SET(_CPACK_UNUSED_VARIABLES_)
|
||||||
|
|
|
@ -252,9 +252,25 @@ int cmCPackGenericGenerator::InstallProject()
|
||||||
it != cmakeProjectsVector.end();
|
it != cmakeProjectsVector.end();
|
||||||
++it )
|
++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();
|
std::string installDirectory = it->c_str();
|
||||||
++it;
|
++it;
|
||||||
std::string installProjectName = it->c_str();
|
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";
|
std::string installFile = installDirectory + "/cmake_install.cmake";
|
||||||
|
|
||||||
const char* buildConfig = this->GetOption("CPACK_BUILD_CONFIG");
|
const char* buildConfig = this->GetOption("CPACK_BUILD_CONFIG");
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
# This file will be configured to contain variables for CPack. These variables
|
# This file will be configured to contain variables for CPack. These variables
|
||||||
# should be set in the CMake list file of the project before CPack module is
|
# should be set in the CMake list file of the project before CPack module is
|
||||||
# included. Example variables are:
|
# included. Example variables are:
|
||||||
# CPACK_BINARY_DIR - Path to the build tree
|
|
||||||
# CPACK_GENERATOR - Generator used to create package
|
# CPACK_GENERATOR - Generator used to create package
|
||||||
|
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
|
||||||
|
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
|
||||||
|
# CPACK_INSTALL_COMMANDS - Extra commands to install components
|
||||||
|
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
|
||||||
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
|
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
|
||||||
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
|
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
|
||||||
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
|
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
|
||||||
|
|
Loading…
Reference in New Issue