InstallRequiredSystemLibraries: Add option to specify install COMPONENT

Previously the module did not support projects using installation
components because install(PROGRAMS) was never called with COMPONENT.
Add an option to specify the COMPONENT so that projects doing this do
not have to resort to using CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP and
writing the install rule by hand.
This commit is contained in:
Johan Andruejol 2015-03-02 14:28:14 -05:00 committed by Brad King
parent d6a320ab5e
commit e97141c2bc
2 changed files with 18 additions and 2 deletions

View File

@ -0,0 +1,6 @@
InstallRequiredSystemLibraries-COMPONENT
----------------------------------------
* The :module:`InstallRequiredSystemLibraries` module learned a new
``CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT`` option to specify the
installation component.

View File

@ -38,9 +38,13 @@
# Set to TRUE to disable warnings about required library files that
# do not exist. (For example, Visual Studio Express editions may
# not provide the redistributable files.)
#
# ``CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT``
# Specify the :command:`install(PROGRAMS)` command ``COMPONENT``
# option. If not specified, no such option will be used.
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
# Copyright 2006-2015 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
@ -486,7 +490,13 @@ if(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS)
set(CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION lib)
endif()
endif()
if(CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT)
set(_CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT
COMPONENT ${CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT})
endif()
install(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS}
DESTINATION ${CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION})
DESTINATION ${CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION}
${_CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT}
)
endif()
endif()