summaryrefslogtreecommitdiffstats
path: root/Utilities/Release/Release.cmake
diff options
context:
space:
mode:
authorKen Martin <ken.martin@kitware.com>2005-06-28 14:56:29 (GMT)
committerKen Martin <ken.martin@kitware.com>2005-06-28 14:56:29 (GMT)
commit35affa053cd093a7afb699e3271842b957b6305a (patch)
treed90b2d1b4322ba88652d341198645c490c32c927 /Utilities/Release/Release.cmake
parent03e78aae603f1c6f03227a2c9a866c44992412bb (diff)
downloadCMake-35affa053cd093a7afb699e3271842b957b6305a.zip
CMake-35affa053cd093a7afb699e3271842b957b6305a.tar.gz
CMake-35affa053cd093a7afb699e3271842b957b6305a.tar.bz2
ENH: added some release support
Diffstat (limited to 'Utilities/Release/Release.cmake')
-rw-r--r--Utilities/Release/Release.cmake61
1 files changed, 61 insertions, 0 deletions
diff --git a/Utilities/Release/Release.cmake b/Utilities/Release/Release.cmake
new file mode 100644
index 0000000..b1acd68
--- /dev/null
+++ b/Utilities/Release/Release.cmake
@@ -0,0 +1,61 @@
+#########################################################################
+# Setup release scripts.
+
+# Search for system runtime libraries based on the platform. This is
+# not complete because it is used only for the release process by the
+# developers.
+IF(CMAKE_GENERATOR MATCHES "^Visual Studio 7 .NET 2003$")
+ STRING(REGEX REPLACE "\\\\" "/" SYSTEMROOT "$ENV{SYSTEMROOT}")
+ FOREACH(lib
+ "${SYSTEMROOT}/system32/msvcp71.dll"
+ "${SYSTEMROOT}/system32/msvcr71.dll"
+ )
+ IF(EXISTS ${lib})
+ SET(CMake_INSTALL_SYSTEM_RUNTIME_LIBS
+ ${CMake_INSTALL_SYSTEM_RUNTIME_LIBS} ${lib})
+ ENDIF(EXISTS ${lib})
+ ENDFOREACH(lib)
+ENDIF(CMAKE_GENERATOR MATCHES "^Visual Studio 7 .NET 2003$")
+
+# Include system runtime libraries in the installation if any are
+# specified by CMake_INSTALL_SYSTEM_RUNTIME_LIBS.
+IF(CMake_INSTALL_SYSTEM_RUNTIME_LIBS)
+ IF(WIN32)
+ INSTALL_PROGRAMS(${CMake_INSTALL_BIN_DIR}
+ ${CMake_INSTALL_SYSTEM_RUNTIME_LIBS})
+ ELSE(WIN32)
+ INSTALL_PROGRAMS(${CMake_INSTALL_LIB_DIR}
+ ${CMake_INSTALL_SYSTEM_RUNTIME_LIBS})
+ ENDIF(WIN32)
+ENDIF(CMake_INSTALL_SYSTEM_RUNTIME_LIBS)
+
+IF(WIN32)
+ FIND_PROGRAM(NSIS_MAKENSIS NAMES makensis
+ PATHS [HKEY_LOCAL_MACHINE\\SOFTWARE\\NSIS]
+ DOC "Where is makensis.exe located"
+ )
+ MARK_AS_ADVANCED(NSIS_MAKENSIS)
+ FIND_PROGRAM(WINZIP_WZZIP NAMES wzzip
+ PATHS "C:/Program Files/WinZip"
+ DOC "Where is makensis.exe located"
+ )
+ MARK_AS_ADVANCED(WINZIP_WZZIP)
+ STRING(REGEX REPLACE "/" "\\\\" CMake_INSTALL_TOP "${CMAKE_INSTALL_PREFIX}")
+ SET(NSIS_EXTRA_COMMANDS ";Include system runtime libraries.\n SetOutPath \"$INSTDIR\\bin\"\n")
+ FOREACH(lib ${CMake_INSTALL_SYSTEM_RUNTIME_LIBS})
+ STRING(REGEX REPLACE "/" "\\\\" LIB "${lib}")
+ SET(NSIS_EXTRA_COMMANDS "${NSIS_EXTRA_COMMANDS} File \"${LIB}\"\n")
+ ENDFOREACH(lib)
+ CONFIGURE_FILE(
+ ${PROJECT_SOURCE_DIR}/Utilities/Release/${PROJECT_NAME}.nsi.in
+ ${PROJECT_BINARY_DIR}/Utilities/Release/${PROJECT_NAME}.nsi
+ IMMEDIATE @ONLY)
+ CONFIGURE_FILE(
+ ${PROJECT_SOURCE_DIR}/Utilities/Release/Win32Release.sh.in
+ ${PROJECT_BINARY_DIR}/Utilities/Release/Win32Release.sh
+ IMMEDIATE @ONLY)
+ CONFIGURE_FILE(
+ ${PROJECT_SOURCE_DIR}/Utilities/Release/cmake_release.sh.in
+ ${PROJECT_BINARY_DIR}/Utilities/Release/cmake_release.sh
+ IMMEDIATE @ONLY)
+ENDIF(WIN32)