Provided by: extra-cmake-modules_5.115.0-0ubuntu5_amd64 bug

NAME

       ecm - Extra CMake Modules

INTRODUCTION

       The  Extra  CMake  Modules package, or ECM, adds to the modules provided by CMake, including ones used by
       find_package() to find common software, ones that can be used directly in CMakeLists.txt files to perform
       common tasks and toolchain files that must be specified on the commandline by the user.

       In addition, it provides common build settings used in software produced by the KDE community.

       While the driving force of this module is to reduce duplication in CMake scripts across KDE software,  it
       is intended to be useful for any software that uses the CMake build system.

USAGE

       To use ECM, add the following to your CMakeLists.txt:

          find_package(ECM REQUIRED NO_MODULE)
          set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})

       (note  that  you  may  want  to append ${ECM_MODULE_PATH} to CMAKE_MODULE_PATH rather than discarding the
       existing value).  You can then just include the modules you require, or  use  find_package()  as  needed.
       For example:

          include(ECMInstallIcons)

       Developers  of KDE software will often want to use the KDE standard settings provided by ECM; they can do
       the following:

          find_package(ECM REQUIRED NO_MODULE)
          set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
          include(KDEInstallDirs)
          include(KDECompilerSettings)
          include(KDECMakeSettings)

       Note that any combination of the above includes can be used if you only want some of the settings.   Some
       of the functionality of KDECMakeSettings can also be selectively disabled.

   Organization
       ECM provides four different types of modules.

       • Core  modules  provide  helpful  macros  for use in project CMake scripts.  See ecm-modules(7) for more
         information.

       • Find modules extend the functionality of CMake’s find_package() command.  See  ecm-find-modules(7)  for
         more information.

       • KDE  modules  provide  common settings for software produced by KDE; much of this may also be useful to
         other projects.  See ecm-kde-modules(7) for more information.

       • Toolchain files change the build tools and targets  used  by  CMake.  See  ecm-toolchains(7)  for  more
         information.

       The  ${ECM_MODULE_DIR}, ${ECM_FIND_MODULE_DIR} and ${ECM_KDE_MODULE_DIR} variables may be used instead of
       ${ECM_MODULE_PATH} if you only need some of this functionality.

DEVELOPMENT

       The ecm-developer(7) manual contains more information about developing for Extra CMake Modules.

LICENSE

       All code is licensed under the BSD 3-Clause license.

LINKS

       • Home page: https://commits.kde.org/extra-cmake-modules

       • Documentation: https://api.kde.org/ecm/

       • Mailing list: https://mail.kde.org/mailman/listinfo/kde-buildsystem

       • IRC channel: #kde-devel on Libera Chat

       • Git repository: https://commits.kde.org/extra-cmake-modules

COPYRIGHT

       KDE Developers

5.115                                             Apr 01, 2024                                            ECM(7)