Warning, /sdk/licensedigger/autotests/testdata/BSD-3-Clause/ecm_CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 #=============================================================================
0002 # Copyright 2006-2013 Alex Neundorf <neundorf@kde.org>
0003 # Copyright 2014-2015 Alex Merry <alex.merry@kde.org>
0004 #
0005 # Redistribution and use in source and binary forms, with or without
0006 # modification, are permitted provided that the following conditions
0007 # are met:
0008 #
0009 # 1. Redistributions of source code must retain the copyright
0010 #    notice, this list of conditions and the following disclaimer.
0011 # 2. Redistributions in binary form must reproduce the copyright
0012 #    notice, this list of conditions and the following disclaimer in the
0013 #    documentation and/or other materials provided with the distribution.
0014 # 3. The name of the author may not be used to endorse or promote products
0015 #    derived from this software without specific prior written permission.
0016 #
0017 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
0018 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
0019 # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
0020 # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
0021 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
0022 # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
0023 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
0024 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0025 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
0026 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0027 #=============================================================================
0028 
0029 cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
0030 
0031 #
0032 # Preliminary setup
0033 #
0034 
0035 set(VERSION "5.70.0") # handled by release scripts
0036 
0037 if (POLICY CMP0048)
0038     cmake_policy(SET CMP0048 NEW)
0039     project(ECM
0040         VERSION "${VERSION}"
0041         LANGUAGES NONE
0042     )
0043 else()
0044     project(ECM NONE)
0045     include("${CMAKE_SOURCE_DIR}/modules/ECMSetupVersion.cmake")
0046     ecm_setup_version(
0047         "${VERSION}"
0048         VARIABLE_PREFIX ECM
0049     )
0050 endif()
0051 
0052 
0053 #
0054 # Includes
0055 #
0056 
0057 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
0058 
0059 include(FeatureSummary)
0060 
0061 
0062 #
0063 # Installation paths
0064 #
0065 
0066 set(SHARE_INSTALL_DIR share
0067     CACHE
0068     PATH
0069     "read-only architecture-independent data"
0070 )
0071 
0072 set(CMAKECONFIG_INSTALL_DIR       ${SHARE_INSTALL_DIR}/ECM/cmake/)
0073 
0074 set(FIND_MODULES_INSTALL_DIR      ${SHARE_INSTALL_DIR}/ECM/find-modules/)
0075 set(KDE_MODULES_INSTALL_DIR       ${SHARE_INSTALL_DIR}/ECM/kde-modules/)
0076 set(MODULES_INSTALL_DIR           ${SHARE_INSTALL_DIR}/ECM/modules/)
0077 set(TOOLCHAIN_MODULES_INSTALL_DIR ${SHARE_INSTALL_DIR}/ECM/toolchain/)
0078 
0079 set(DOC_INSTALL_DIR ${SHARE_INSTALL_DIR}/doc/ECM
0080     CACHE
0081     PATH
0082     "HTML and QtHelp documentation"
0083 )
0084 set(MAN_INSTALL_DIR ${SHARE_INSTALL_DIR}/man
0085     CACHE
0086     PATH
0087     "man pages"
0088 )
0089 
0090 
0091 
0092 #
0093 # Documentation
0094 #
0095 
0096 add_subdirectory(docs)
0097 
0098 
0099 #
0100 # Tests
0101 #
0102 
0103 option(BUILD_TESTING "Build automated tests." ON)
0104 add_feature_info(BUILD_TESTING BUILD_TESTING "Build automated tests.")
0105 if(BUILD_TESTING)
0106     enable_testing()
0107     add_subdirectory(tests)
0108 endif()
0109 
0110 
0111 #
0112 # Install modules
0113 #
0114 
0115 file(GLOB installModuleFiles ${CMAKE_SOURCE_DIR}/modules/*[^~])
0116 install(FILES ${installModuleFiles} DESTINATION ${MODULES_INSTALL_DIR})
0117 
0118 file(GLOB installTestModuleFiles ${CMAKE_SOURCE_DIR}/test-modules/*[^~])
0119 install(FILES ${installTestModuleFiles} DESTINATION ${SHARE_INSTALL_DIR}/ECM/test-modules)
0120 
0121 file(GLOB installKdeModuleFiles ${CMAKE_SOURCE_DIR}/kde-modules/*[^~])
0122 install(FILES ${installKdeModuleFiles} DESTINATION ${KDE_MODULES_INSTALL_DIR})
0123 
0124 file(GLOB installFindModuleFiles ${CMAKE_SOURCE_DIR}/find-modules/*.cmake ${CMAKE_SOURCE_DIR}/find-modules/*.py)
0125 install(FILES ${installFindModuleFiles} DESTINATION ${FIND_MODULES_INSTALL_DIR})
0126 
0127 file(GLOB installToolchainModuleFiles ${CMAKE_SOURCE_DIR}/toolchain/*[^~])
0128 install(FILES ${installToolchainModuleFiles} DESTINATION ${TOOLCHAIN_MODULES_INSTALL_DIR})
0129 
0130 
0131 #
0132 # Config.cmake file
0133 #
0134 
0135 include(CMakePackageConfigHelpers)
0136 
0137 configure_package_config_file(
0138     ECMConfig.cmake.in
0139     ${CMAKE_CURRENT_BINARY_DIR}/ECMConfig.cmake
0140     INSTALL_DESTINATION
0141         ${CMAKECONFIG_INSTALL_DIR}
0142     PATH_VARS
0143         FIND_MODULES_INSTALL_DIR
0144         KDE_MODULES_INSTALL_DIR
0145         MODULES_INSTALL_DIR
0146 )
0147 
0148 write_basic_package_version_file(
0149     ${CMAKE_CURRENT_BINARY_DIR}/ECMConfigVersion.cmake
0150     VERSION
0151         "${PROJECT_VERSION}"
0152     COMPATIBILITY
0153         AnyNewerVersion
0154 )
0155 
0156 install(
0157     FILES
0158         ${CMAKE_CURRENT_BINARY_DIR}/ECMConfig.cmake
0159         ${CMAKE_CURRENT_BINARY_DIR}/ECMConfigVersion.cmake
0160     DESTINATION
0161         ${CMAKECONFIG_INSTALL_DIR}
0162 )
0163 
0164 
0165 #
0166 # Packaging
0167 #
0168 
0169 set(CPACK_PACKAGE_NAME extra-cmake-modules)
0170 set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
0171 set(CPACK_SYSTEM_NAME "generic")
0172 set(CPACK_GENERATOR "TGZ")
0173 set(CPACK_SET_DESTDIR FALSE)
0174 
0175 include(CPack)
0176 
0177 
0178 #
0179 # Feature summary
0180 #
0181 
0182 feature_summary(
0183     FATAL_ON_MISSING_REQUIRED_PACKAGES
0184     WHAT ALL
0185 )