#At file:///H:/bzr-new/mysql-5.5-bugteam/ based on revid:vvaintroub@stripped
3121 Vladislav Vaintroub 2010-11-13
Bug#58178: "make package" is broken with cmake 2.8.3
Problem: with "make package" , many small packages are
generated, one per CMake COMPONENT, instead of expected single
package. This is due to the new (in cmake 2.8.3) component-based
install for archive( e.g ZIP,TGZ ) CPack generators.
See http://public.kitware.com/Bug/view.php?id=11452 for discussion.
Fix: use CPACK_MONOLITHIC_INSTALL=1 to enforce single package.
Reset this variable temporarily to 0 for MSI creation (MSI needs
COMPONENTs)
modified:
CMakeLists.txt
packaging/WiX/create_msi.cmake.in
=== modified file 'CMakeLists.txt'
--- a/CMakeLists.txt 2010-11-05 13:33:59 +0000
+++ b/CMakeLists.txt 2010-11-13 18:38:39 +0000
@@ -331,6 +331,11 @@ ELSE()
SET(CPACK_GENERATOR "TGZ")
ENDIF()
ADD_SUBDIRECTORY(packaging/WiX)
+
+# Create a single package with "make package"
+# (see http://public.kitware.com/Bug/view.php?id=11452)
+SET(CPACK_MONOLITHIC_INSTALL 1 CACHE INTERNAL "")
+
INCLUDE(CPack)
IF(UNIX)
INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL)
=== modified file 'packaging/WiX/create_msi.cmake.in'
--- a/packaging/WiX/create_msi.cmake.in 2010-07-24 15:26:45 +0000
+++ b/packaging/WiX/create_msi.cmake.in 2010-11-13 18:38:39 +0000
@@ -27,6 +27,12 @@ ENDIF()
SET(ENV{VS_UNICODE_OUTPUT})
+# Switch off the monolithic install
+EXECUTE_PROCESS(
+ COMMAND ${CMAKE_COMMAND} -DCPACK_MONOLITHIC_INSTALL=0 ${CMAKE_BINARY_DIR}
+ OUTPUT_QUIET
+)
+
INCLUDE(${CMAKE_BINARY_DIR}/CPackConfig.cmake)
IF(CPACK_WIX_CONFIG)
@@ -318,3 +324,9 @@ EXECUTE_PROCESS(
${EXTRA_LIGHT_ARGS}
)
+# Switch monolithic install on again
+EXECUTE_PROCESS(
+ COMMAND ${CMAKE_COMMAND} -DCPACK_MONOLITHIC_INSTALL=1 ${CMAKE_BINARY_DIR}
+ OUTPUT_QUIET
+)
+
Attachment: [text/bzr-bundle] bzr/vvaintroub@mysql.com-20101113183839-65opgam6ffif1tdw.bundle
Thread |
---|
• bzr commit into mysql-5.5-bugteam branch (vvaintroub:3121) Bug#58178 | Vladislav Vaintroub | 13 Nov |