document: modulemd
version: 1
data:
summary: Cross-platform make system
description: >
CMake is used to control the software compilation process using simple
platform and compiler independent configuration files. CMake generates
native makefiles and workspaces that can be used in the compiler
environment of your choice. CMake is quite sophisticated: it is possible
to support complex environments requiring system configuration,
preprocessor generation, code generation, and template instantiation.
This module delivers CMake without support for Emacs, without
graphical user interface and without Sphinx-generated documentation.
license:
module: [ MIT ]
dependencies:
buildrequires:
autotools: master
cmake-bootstrap: master
platform: master
python3: master
# Explicitly require transitive dependencies to work around
# <https://pagure.io/fm-orchestrator/issue/530>.
host: master
requires:
platform: master
python3: master
references:
community: https://docs.pagure.org/modularity/
documentation: https://github.com/modularity-modules/cmake-bootstrap
tracker: https://github.com/modularity-modules/cmake-bootstrap
api:
rpms:
- cmake
- cmake-data
- cmake-doc
# TODO: Move these into a private location to remove them from the
# API
- jsoncpp
- jsoncpp-devel
- rhash
- rhash-devel
# TODO: Move these into a separate module so that nodejs can
# unbundle them
- libuv
- libuv-devel
- libuv-static
# Make sure cmake-filesystem is not built or it is filtered, bug #1498907
buildopts:
rpms:
macros: |
%_without_cmake_enables_emacs 1
%_with_cmake_enables_foreign_filesystem 1
%_without_cmake_enables_git_test 1
%_without_cmake_enables_gui 1
%_with_cmake_enables_ncurses 1
%_with_cmake_enables_python3 1
%_with_cmake_enables_rpm 1
%_without_cmake_enables_sphinx 1
%_without_cmake_enables_X11_test 1
%_without_jsoncpp_enables_doc 1
components:
rpms:
jsoncpp:
rationale: Build and run-time dependency.
libuv:
rationale: Build and run-time dependency.
rhash:
rationale: Build and run-time dependency.
cmake:
rationale: The API.
buildorder: 1