summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Cole <david.cole@kitware.com>2012-07-24 21:03:37 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2012-07-24 21:03:37 (GMT)
commitc1bbdbff57651a24fd8d7d5abe67dd24e7e6ed27 (patch)
tree8174813d9b51f7157171198f44ac6d67c35b7939
parentd8627aa5b9a7d3e0753cc43841cd74b553fb4cdf (diff)
parentb47cffa9b892b3f4bd3d99efb4e3130440af8300 (diff)
downloadCMake-c1bbdbff57651a24fd8d7d5abe67dd24e7e6ed27.zip
CMake-c1bbdbff57651a24fd8d7d5abe67dd24e7e6ed27.tar.gz
CMake-c1bbdbff57651a24fd8d7d5abe67dd24e7e6ed27.tar.bz2
Merge topic 'DoNotInvokeCPackAtCMakeTime-forCMakeTests'
b47cffa CPack: Use bin subdir when looking for dpkg and rpmbuild a8c659c Find dpkg and rpmbuild in usual Fink and MacPort paths 848f220 Do not run cpack at CMake time it is not available.
-rw-r--r--Source/CPack/cmCPackDebGenerator.h5
-rw-r--r--Source/CPack/cmCPackRPMGenerator.h3
-rw-r--r--Tests/CMakeLists.txt36
3 files changed, 20 insertions, 24 deletions
diff --git a/Source/CPack/cmCPackDebGenerator.h b/Source/CPack/cmCPackDebGenerator.h
index 7f2352f..d678cfa 100644
--- a/Source/CPack/cmCPackDebGenerator.h
+++ b/Source/CPack/cmCPackDebGenerator.h
@@ -35,7 +35,10 @@ public:
{
#ifdef __APPLE__
// on MacOS enable CPackDeb iff dpkg is found
- return cmSystemTools::FindProgram("dpkg") != "" ? true : false;
+ std::vector<std::string> locations;
+ locations.push_back("/sw/bin"); // Fink
+ locations.push_back("/opt/local/bin"); // MacPorts
+ return cmSystemTools::FindProgram("dpkg",locations) != "" ? true : false;
#else
// legacy behavior on other systems
return true;
diff --git a/Source/CPack/cmCPackRPMGenerator.h b/Source/CPack/cmCPackRPMGenerator.h
index eec8204..a7722bc 100644
--- a/Source/CPack/cmCPackRPMGenerator.h
+++ b/Source/CPack/cmCPackRPMGenerator.h
@@ -39,6 +39,9 @@ public:
{
#ifdef __APPLE__
// on MacOS enable CPackRPM iff rpmbuild is found
+ std::vector<std::string> locations;
+ locations.push_back("/sw/bin"); // Fink
+ locations.push_back("/opt/local/bin"); // MacPorts
return cmSystemTools::FindProgram("rpmbuild") != "" ? true : false;
#else
// legacy behavior on other systems
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 300ab09..80ab362 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -717,31 +717,21 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
ENDIF(CTEST_RUN_CPackComponents)
IF(CTEST_RUN_CPackComponentsForAll)
- # Analyze 'cpack --help' output for list of available generators:
- execute_process(COMMAND ${CMAKE_CPACK_COMMAND} --help
- RESULT_VARIABLE result
- OUTPUT_VARIABLE stdout
- ERROR_VARIABLE stderr)
-
- string(REPLACE ";" "\\;" stdout "${stdout}")
- string(REPLACE "\n" "E;" stdout "${stdout}")
-
- set(collecting 0)
- set(ACTIVE_CPACK_GENERATORS)
- foreach(eline ${stdout})
- string(REGEX REPLACE "^(.*)E$" "\\1" line "${eline}")
- if(collecting AND NOT line STREQUAL "")
- string(REGEX REPLACE "^ ([^ ]+) += (.*)$" "\\1" gen "${line}")
- string(REGEX REPLACE "^ ([^ ]+) += (.*)$" "\\2" doc "${line}")
- list(APPEND ACTIVE_CPACK_GENERATORS ${gen})
- endif()
- if(line STREQUAL "Generators")
- set(collecting 1)
- endif()
- endforeach()
+ # Check whether if rpmbuild command is found
+ # before adding RPM tests
+ find_program(RPMBUILD_EXECUTABLE NAMES rpmbuild)
+ if(RPMBUILD_EXECUTABLE)
+ list(APPEND ACTIVE_CPACK_GENERATORS RPM)
+ endif(RPMBUILD_EXECUTABLE)
+ # Check whether if dpkg command is found
+ # before adding DEB tests
+ find_program(DPKG_EXECUTABLE NAMES dpkg)
+ if(DPKG_EXECUTABLE)
+ list(APPEND ACTIVE_CPACK_GENERATORS DEB)
+ endif(DPKG_EXECUTABLE)
+
# ACTIVE_CPACK_GENERATORS variable
# now contains the list of 'active generators'
-
set(CPackComponentsForAll_EXTRA_OPTIONS)
set(CPackRun_CPackCommand "-DCPackCommand=${CMAKE_CPACK_COMMAND}")
# set up list of CPack generators