ENH: Install all Modules and Templates

This removes the file-wise installation rules for Modules and Templates
and instead installs the whole directories.  This approach is much less
error-prone.  The old approach was left from before CMake had the
install(DIRECTORY) command.
This commit is contained in:
Brad King 2009-07-24 13:17:41 -04:00
parent 31678a3c27
commit 071ce33ec9
4 changed files with 15 additions and 23 deletions

View File

@ -374,6 +374,7 @@ SET(CMAKE_DOC_DIR "/doc/cmake-${CMake_VERSION}" CACHE STRING
SET(CMAKE_MAN_DIR "/man" CACHE STRING
"Install location for man pages (relative to prefix).")
MARK_AS_ADVANCED(CMAKE_DATA_DIR CMAKE_DOC_DIR CMAKE_MAN_DIR)
STRING(REGEX REPLACE "^/" "" CMake_DATA_DEST "${CMAKE_DATA_DIR}")
# include special compile flags for some compilers
INCLUDE(CompileFlags.cmake)
@ -465,8 +466,6 @@ MARK_AS_ADVANCED(CMAKE_STRICT)
# build the remaining subdirectories
SUBDIRS(Source)
SUBDIRS(Modules)
SUBDIRS(Templates)
SUBDIRS(Utilities)
SUBDIRS(Tests)
@ -474,6 +473,20 @@ SUBDIRS(Tests)
ADD_TEST(SystemInformationNew "${CMAKE_CMAKE_COMMAND}"
--system-information -G "${CMAKE_TEST_GENERATOR}" )
# Install script directories.
INSTALL(
DIRECTORY Modules Templates
DESTINATION "${CMake_DATA_DEST}"
FILE_PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
DIRECTORY_PERMISSIONS OWNER_READ OWNER_EXECUTE OWNER_WRITE
GROUP_READ GROUP_EXECUTE
WORLD_READ WORLD_EXECUTE
PATTERN "*.sh.in" PERMISSIONS OWNER_READ OWNER_EXECUTE OWNER_WRITE
GROUP_READ GROUP_EXECUTE
WORLD_READ WORLD_EXECUTE
PATTERN "CVS" EXCLUDE
)
#-----------------------------------------------------------------------
# End of the main section of the CMakeLists file
#-----------------------------------------------------------------------

View File

@ -1,12 +0,0 @@
# just install the modules
## new file added, force rerunning cmake
SUBDIRS(Platform)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.cmake$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.cpp$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.cxx$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.in$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.c$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.h$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.F$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules readme\\.txt$)

View File

@ -1,3 +0,0 @@
# just install the modules
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules/Platform .*\\.cmake$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules/Platform .*\\.in$)

View File

@ -1,6 +0,0 @@
# just install the modules
INSTALL_FILES(${CMAKE_DATA_DIR}/Templates .*\\.in)
INSTALL_FILES(${CMAKE_DATA_DIR}/Templates .*\\.txt)
INSTALL_FILES(${CMAKE_DATA_DIR}/Templates .*\\.cmake$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Templates .*\\.dsptemplate$)
INSTALL_FILES(${CMAKE_DATA_DIR}/Templates .*\\.vsmacros$)