CMake/Help/dev
Brad King 3524abf345 Merge topic 'build-database-fixes'
12d73c9f78 cmExperimental: recycle build database uuid
d02ca76184 cmDyndepCollation: record required modules to the build database
8a773168fd Tests/CXXModules: help diagnose build database errors
7ca4ac8e13 cmBuildDatabase: fix language comparison for visibility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10414
2025-03-05 08:32:50 -05:00
..
documentation.rst LICENSE: Replace references to Copyright.txt with LICENSE.rst 2025-03-03 10:43:35 -05:00
experimental.rst cmExperimental: recycle build database uuid 2025-03-03 22:03:27 +01:00
integration-testing.rst Help/dev: Add a CMake Testing Guide 2024-06-05 12:58:47 -04:00
maint.rst Help/dev: Update git command-line conventions in maintainer guide 2025-02-05 13:09:50 -05:00
README.rst Help/dev: Add a CMake Testing Guide 2024-06-05 12:58:47 -04:00
review.rst Help/dev: Move integration testing to a more-specific document 2024-06-05 12:58:47 -04:00
source.rst C++ features: add cm::is_scoped_enum from C++23 2025-01-28 17:52:36 +01:00
testing.rst Help/dev: Add a CMake Testing Guide 2024-06-05 12:58:47 -04:00

CMake Development
*****************

This directory contains documentation about development of CMake itself.
It is not part of the user documentation distributed with CMake.

Contributor Instructions
========================

See `CONTRIBUTING.rst`_ for instructions to contribute changes.

The process for contributing changes is the same whether or not one
has been invited to participate directly in upstream development.

.. _`CONTRIBUTING.rst`: ../../CONTRIBUTING.rst

Upstream Development
====================

CMake uses `Kitware's GitLab Instance`_ to manage development, review, and
integration of changes.  The `CMake Repository`_ holds the integration
branches and tags.  Upstream development processes are covered by the
following documents:

* The `CMake Review Process`_ manages integration of changes.
* The `CMake Integration Testing`_ infrastructure tests changes
  before and after merging.

.. _`Kitware's GitLab Instance`: https://gitlab.kitware.com
.. _`CMake Repository`: https://gitlab.kitware.com/cmake/cmake
.. _`CMake Review Process`: review.rst
.. _`CMake Integration Testing`: integration-testing.rst

Developer Documentation
=======================

CMake developer documentation is provided by the following documents:

* The `CMake Source Code Guide`_.
* The `CMake Documentation Guide`_.
* The `CMake Testing Guide`_.
* The `CMake Experimental Features Guide`_.

.. _`CMake Source Code Guide`: source.rst
.. _`CMake Documentation Guide`: documentation.rst
.. _`CMake Testing Guide`: testing.rst
.. _`CMake Experimental Features Guide`: experimental.rst

Maintainer Documentation
========================

CMake maintainer documentation is provided by the following documents:

* The `CMake Maintainer Guide`_.

.. _`CMake Maintainer Guide`: maint.rst