InstallRequiredSystemLibraries debug-only (#11141)
Add support to InstallRequiredSystemLibraries to only install debug libraries when both debug and release versions are available. This is as if you are building a debug package then only the debug versions are needed but not the release.
This commit is contained in:
parent
492cd84fc5
commit
753b429ec4
|
@ -1,18 +1,21 @@
|
|||
# By including this file, all files in the CMAKE_INSTALL_DEBUG_LIBRARIES,
|
||||
# will be installed with INSTALL(PROGRAMS ...) into bin for WIN32 and lib
|
||||
# for non-win32. If CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP is set to TRUE
|
||||
# By including this file, all library files listed in the variable
|
||||
# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS will be installed with
|
||||
# INSTALL(PROGRAMS ...) into bin for WIN32 and lib
|
||||
# for non-WIN32. If CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP is set to TRUE
|
||||
# before including this file, then the INSTALL command is not called.
|
||||
# The user can use the variable CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS to use a
|
||||
# custom install command and install them into any directory they want.
|
||||
# custom install command and install them however they want.
|
||||
# If it is the MSVC compiler, then the microsoft run
|
||||
# time libraries will be found and automatically added to the
|
||||
# CMAKE_INSTALL_DEBUG_LIBRARIES, and installed.
|
||||
# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS, and installed.
|
||||
# If CMAKE_INSTALL_DEBUG_LIBRARIES is set and it is the MSVC
|
||||
# compiler, then the debug libraries are installed when available.
|
||||
# If CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY is set then only the debug
|
||||
# libraries are installed when both debug and release are available.
|
||||
# If CMAKE_INSTALL_MFC_LIBRARIES is set then the MFC run time
|
||||
# libraries are installed as well as the CRT run time libraries.
|
||||
# If CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION is set then the libraries are
|
||||
# instaled to that directory rather than the default.
|
||||
# installed to that directory rather than the default.
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2006-2009 Kitware, Inc.
|
||||
|
@ -65,12 +68,14 @@ IF(MSVC)
|
|||
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs
|
||||
"${MSVC80_CRT_DIR}/Microsoft.VC80.CRT.manifest"
|
||||
"${MSVC80_CRT_DIR}/msvcm80.dll"
|
||||
"${MSVC80_CRT_DIR}/msvcp80.dll"
|
||||
"${MSVC80_CRT_DIR}/msvcr80.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
IF(CMAKE_INSTALL_DEBUG_LIBRARIES)
|
||||
SET(MSVC80_CRT_DIR
|
||||
|
@ -98,12 +103,15 @@ IF(MSVC)
|
|||
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs
|
||||
"${MSVC90_CRT_DIR}/Microsoft.VC90.CRT.manifest"
|
||||
"${MSVC90_CRT_DIR}/msvcm90.dll"
|
||||
"${MSVC90_CRT_DIR}/msvcp90.dll"
|
||||
"${MSVC90_CRT_DIR}/msvcr90.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
IF(CMAKE_INSTALL_DEBUG_LIBRARIES)
|
||||
SET(MSVC90_CRT_DIR
|
||||
"${MSVC90_REDIST_DIR}/Debug_NonRedist/${CMAKE_MSVC_ARCH}/Microsoft.VC90.DebugCRT")
|
||||
|
@ -128,11 +136,14 @@ IF(MSVC)
|
|||
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs
|
||||
"${MSVC10_CRT_DIR}/Microsoft.VC100.CRT.manifest"
|
||||
"${MSVC10_CRT_DIR}/msvcp100.dll"
|
||||
"${MSVC10_CRT_DIR}/msvcr100.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
IF(CMAKE_INSTALL_DEBUG_LIBRARIES)
|
||||
SET(MSVC10_CRT_DIR
|
||||
"${MSVC10_REDIST_DIR}/Debug_NonRedist/${CMAKE_MSVC_ARCH}/Microsoft.VC90.DebugCRT")
|
||||
|
@ -171,6 +182,7 @@ IF(MSVC)
|
|||
SET(MSVC80_MFC_DIR "${MSVC80_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC80.MFC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs ${__install__libs}
|
||||
"${MSVC80_MFC_DIR}/Microsoft.VC80.MFC.manifest"
|
||||
"${MSVC80_MFC_DIR}/mfc80.dll"
|
||||
|
@ -178,6 +190,8 @@ IF(MSVC)
|
|||
"${MSVC80_MFC_DIR}/mfcm80.dll"
|
||||
"${MSVC80_MFC_DIR}/mfcm80u.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
# include the language dll's for vs8 as well as the actuall dll's
|
||||
SET(MSVC80_MFCLOC_DIR "${MSVC80_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC80.MFCLOC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
|
@ -212,6 +226,7 @@ IF(MSVC)
|
|||
SET(MSVC90_MFC_DIR "${MSVC90_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC90.MFC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs ${__install__libs}
|
||||
"${MSVC90_MFC_DIR}/Microsoft.VC90.MFC.manifest"
|
||||
"${MSVC90_MFC_DIR}/mfc90.dll"
|
||||
|
@ -219,6 +234,8 @@ IF(MSVC)
|
|||
"${MSVC90_MFC_DIR}/mfcm90.dll"
|
||||
"${MSVC90_MFC_DIR}/mfcm90u.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
# include the language dll's for vs9 as well as the actuall dll's
|
||||
SET(MSVC90_MFCLOC_DIR "${MSVC90_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC90.MFCLOC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
|
@ -253,6 +270,7 @@ IF(MSVC)
|
|||
SET(MSVC10_MFC_DIR "${MSVC10_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC100.MFC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
# directory containing the executable.
|
||||
IF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
SET(__install__libs ${__install__libs}
|
||||
"${MSVC10_MFC_DIR}/Microsoft.VC100.MFC.manifest"
|
||||
"${MSVC10_MFC_DIR}/mfc100.dll"
|
||||
|
@ -260,6 +278,8 @@ IF(MSVC)
|
|||
"${MSVC10_MFC_DIR}/mfcm100.dll"
|
||||
"${MSVC10_MFC_DIR}/mfcm100u.dll"
|
||||
)
|
||||
ENDIF(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
|
||||
# include the language dll's for vs10 as well as the actuall dll's
|
||||
SET(MSVC10_MFCLOC_DIR "${MSVC10_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC100.MFCLOC")
|
||||
# Install the manifest that allows DLLs to be loaded from the
|
||||
|
@ -301,6 +321,7 @@ IF(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS)
|
|||
SET(CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION lib)
|
||||
ENDIF(WIN32)
|
||||
ENDIF(NOT CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION)
|
||||
INSTALL(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION ${CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION})
|
||||
INSTALL(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS}
|
||||
DESTINATION ${CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION})
|
||||
ENDIF(NOT CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP)
|
||||
ENDIF(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS)
|
||||
|
|
Loading…
Reference in New Issue