diff options
author | Clinton Stimpson <clinton@elemtech.com> | 2013-11-01 02:14:58 (GMT) |
---|---|---|
committer | Clinton Stimpson <clinton@elemtech.com> | 2013-11-01 02:25:12 (GMT) |
commit | 193029c4aaad7a13f0b6efed59a1c88af0dc6714 (patch) | |
tree | 799253f78297f9c32ea074d47e1bbedc88f873d4 | |
parent | 7a616e75b84d692e2df453e889c12d1afdb6c576 (diff) | |
download | CMake-193029c4aaad7a13f0b6efed59a1c88af0dc6714.zip CMake-193029c4aaad7a13f0b6efed59a1c88af0dc6714.tar.gz CMake-193029c4aaad7a13f0b6efed59a1c88af0dc6714.tar.bz2 |
cpack: For DragNDrop generator, add sysroot option when calling Rez.
Also adding overwrite option (-ov) in case multiple temporary
dmg files are being created.
Fixes bug #14536.
-rw-r--r-- | Modules/CPack.cmake | 5 | ||||
-rw-r--r-- | Source/CPack/cmCPackDragNDropGenerator.cxx | 7 | ||||
-rw-r--r-- | Tests/CPackComponentsForAll/CMakeLists.txt | 3 | ||||
-rw-r--r-- | Tests/CPackComponentsForAll/license.txt | 3 |
4 files changed, 16 insertions, 2 deletions
diff --git a/Modules/CPack.cmake b/Modules/CPack.cmake index da6b2e0..cd98f49 100644 --- a/Modules/CPack.cmake +++ b/Modules/CPack.cmake @@ -519,6 +519,11 @@ cpack_set_if_not_set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") # WiX specific variables cpack_set_if_not_set(CPACK_WIX_SIZEOF_VOID_P "${CMAKE_SIZEOF_VOID_P}") +# osx sysroot +if(CMAKE_OSX_SYSROOT) + set(CPACK_OSX_SYSROOT "${CMAKE_OSX_SYSROOT}") +endif() + if(DEFINED CPACK_COMPONENTS_ALL) if(CPACK_MONOLITHIC_INSTALL) message("CPack warning: both CPACK_COMPONENTS_ALL and CPACK_MONOLITHIC_INSTALL have been set.\nDefaulting to a monolithic installation.") diff --git a/Source/CPack/cmCPackDragNDropGenerator.cxx b/Source/CPack/cmCPackDragNDropGenerator.cxx index d973c01..ab386d3 100644 --- a/Source/CPack/cmCPackDragNDropGenerator.cxx +++ b/Source/CPack/cmCPackDragNDropGenerator.cxx @@ -474,7 +474,7 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir, udco_image_command << this->GetOption("CPACK_COMMAND_HDIUTIL"); udco_image_command << " convert \"" << temp_image << "\""; udco_image_command << " -format UDCO"; - udco_image_command << " -o \"" << temp_udco << "\""; + udco_image_command << " -ov -o \"" << temp_udco << "\""; std::string error; if(!this->RunCommand(udco_image_command, &error)) @@ -504,6 +504,11 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir, // Rez the SLA cmOStringStream embed_sla_command; embed_sla_command << this->GetOption("CPACK_COMMAND_REZ"); + const char* sysroot = this->GetOption("CPACK_OSX_SYSROOT"); + if(sysroot) + { + embed_sla_command << " -isysroot \"" << sysroot << "\""; + } embed_sla_command << " \"" << sla_r << "\""; embed_sla_command << " -a -o "; embed_sla_command << "\"" << temp_udco << "\""; diff --git a/Tests/CPackComponentsForAll/CMakeLists.txt b/Tests/CPackComponentsForAll/CMakeLists.txt index 8162f0c..ff40e30 100644 --- a/Tests/CPackComponentsForAll/CMakeLists.txt +++ b/Tests/CPackComponentsForAll/CMakeLists.txt @@ -59,6 +59,7 @@ set(CPACK_PACKAGE_VERSION_MAJOR "1") set(CPACK_PACKAGE_VERSION_MINOR "0") set(CPACK_PACKAGE_VERSION_PATCH "2") set(CPACK_PACKAGE_INSTALL_DIRECTORY "CPack Component Example") +set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/license.txt) # Tell CPack all of the components to install. The "ALL" # refers to the fact that this is the set of components that @@ -120,4 +121,4 @@ if (NOT ("${CPackComponentWay}" STREQUAL "default")) set(CPACK_PROJECT_CONFIG_FILE ${CPackComponentsForAll_BINARY_DIR}/MyLibCPackConfig-${CPackComponentWay}.cmake) endif () # Include CPack to introduce the appropriate targets -include(CPack)
\ No newline at end of file +include(CPack) diff --git a/Tests/CPackComponentsForAll/license.txt b/Tests/CPackComponentsForAll/license.txt new file mode 100644 index 0000000..ba8ba48 --- /dev/null +++ b/Tests/CPackComponentsForAll/license.txt @@ -0,0 +1,3 @@ +LICENSE +------- +This is an installer created using CPack (http://www.cmake.org). No license provided. |