Hi,I'm using cmake in a project to build different configurations (debug-static, debug-shared, release-...) of a library out of the same sources. All these
built libraries have to be in a single project as cpack is used to make binary packages for windows and linux.
In case of the windows platform everything works fine, under linux the generated binaries are not installed and packed. For the test case is attached (for cmake 2.6.x): $ tar xfz debug-and-release.tar.gz $ mkdir BUILD $ cd BUILD $ cmake ../debug-and-release .. $ make .. $ make install [ 33%] Built target bin1 [ 66%] Built target bin2 [100%] Built target bin3 Install the project... -- Install configuration: "" -- Installing: /tmp/bin/bin1 Only on of the 3 executables is installed. If hacked cmake-2.6.2 to do the job as wished. This patch is not perfect: It would be favourable to make this change configurable. -- Karl Wallner
debug-and-release.tar.gz
Description: application/gzip
diff -r -c ../ORIG/cmake-2.6.2/Source/cmInstallGenerator.cxx cmake-2.6.2/Source/cmInstallGenerator.cxx
*** ../ORIG/cmake-2.6.2/Source/cmInstallGenerator.cxx 2008-09-24 20:34:36.000000000 +0200
--- cmake-2.6.2/Source/cmInstallGenerator.cxx 2008-10-01 20:30:53.000000000 +0200
***************
*** 158,163 ****
--- 158,164 ----
std::string
cmInstallGenerator::CreateConfigTest(const char* config)
{
+ return std::string("1");
std::string result = "\"${CMAKE_INSTALL_CONFIG_NAME}\" MATCHES \"^(";
if(config && *config)
{
***************
*** 171,176 ****
--- 172,178 ----
std::string
cmInstallGenerator::CreateConfigTest(std::vector<std::string> const& configs)
{
+ return std::string("1");
std::string result = "\"${CMAKE_INSTALL_CONFIG_NAME}\" MATCHES \"^(";
const char* sep = "";
for(std::vector<std::string>::const_iterator ci = configs.begin();
_______________________________________________ CMake mailing list [email protected] http://www.cmake.org/mailman/listinfo/cmake
