cmake/CONTRIBUTING.rst

78 lines
3.0 KiB
ReStructuredText
Raw Normal View History

2014-08-03 19:52:23 +02:00
Contributing to CMake
*********************
2017-07-20 19:35:53 +02:00
The following summarizes the process for contributing changes.
See documentation on `CMake Development`_ for more information.
.. _`CMake Development`: Help/dev/README.rst
2014-08-03 19:52:23 +02:00
Community
=========
CMake is maintained and supported by `Kitware`_ and developed in
collaboration with a productive community of contributors.
2020-08-30 11:54:41 +02:00
Please post to the ``Development`` category of the `CMake Forum`_ to raise
2016-10-30 18:24:19 +01:00
discussion of development topics.
2014-08-03 19:52:23 +02:00
.. _`Kitware`: http://www.kitware.com/cmake
2020-08-30 11:54:41 +02:00
.. _`CMake Forum`: https://discourse.cmake.org
2014-08-03 19:52:23 +02:00
Patches
=======
2016-10-30 18:24:19 +01:00
CMake uses `Kitware's GitLab Instance`_ to manage development and code review.
To contribute patches:
#. Fork the upstream `CMake Repository`_ into a personal account.
2019-11-11 23:01:05 +01:00
#. Run `Utilities/SetupForDevelopment.sh`_ for local git configuration.
#. See `Building CMake`_ for building CMake locally.
2017-07-20 19:35:53 +02:00
#. See the `CMake Source Code Guide`_ for coding guidelines.
2020-02-01 23:06:01 +01:00
#. Create a topic branch named suitably for your work.
Base all new work on the upstream ``master`` branch.
2018-01-26 17:06:56 +01:00
Base work on the upstream ``release`` branch only if it fixes a
regression or bug in a feature new to that release.
2018-08-09 18:06:22 +02:00
If in doubt, prefer ``master``. Reviewers may simply ask for
a rebase if deemed appropriate in particular cases.
2018-01-26 17:06:56 +01:00
#. Create commits making incremental, distinct, logically complete changes
with appropriate `commit messages`_.
2020-02-01 23:06:01 +01:00
#. Push the topic branch to a personal repository fork on GitLab.
2018-01-26 17:06:56 +01:00
#. Create a GitLab Merge Request targeting the upstream ``master`` branch
(even if the change is intended for merge to the ``release`` branch).
2018-10-28 12:09:07 +01:00
Check the box labelled "Allow commits from members who can merge to the
target branch". This will allow maintainers to make minor edits on your
behalf.
2016-10-30 18:24:19 +01:00
2017-07-20 19:35:53 +02:00
The merge request will enter the `CMake Review Process`_ for consideration.
2016-10-30 18:24:19 +01:00
.. _`Kitware's GitLab Instance`: https://gitlab.kitware.com
.. _`CMake Repository`: https://gitlab.kitware.com/cmake/cmake
2017-07-20 19:35:53 +02:00
.. _`Utilities/SetupForDevelopment.sh`: Utilities/SetupForDevelopment.sh
2019-11-11 23:01:05 +01:00
.. _`Building CMake`: README.rst#building-cmake
2017-07-20 19:35:53 +02:00
.. _`CMake Source Code Guide`: Help/dev/source.rst
2018-01-26 17:06:56 +01:00
.. _`commit messages`: Help/dev/review.rst#commit-messages
2017-07-20 19:35:53 +02:00
.. _`CMake Review Process`: Help/dev/review.rst
2016-07-09 11:21:54 +02:00
2018-10-28 12:09:07 +01:00
CMake Dashboard Client
======================
The *integration testing* step of the `CMake Review Process`_ uses a set of
testing machines that follow an integration branch on their own schedule to
drive testing and submit results to the `CMake CDash Page`_. Anyone is
welcome to provide testing machines in order to help keep support for their
platforms working.
See documentation on `CMake Testing Process`_ for more information.
.. _`CMake CDash Page`: https://open.cdash.org/index.php?project=CMake
.. _`CMake Testing Process`: Help/dev/testing.rst
2014-08-03 19:52:23 +02:00
License
=======
We do not require any formal copyright assignment or contributor license
agreement. Any contributions intentionally sent upstream are presumed
2015-11-17 17:22:37 +01:00
to be offered under terms of the OSI-approved BSD 3-clause License.
2014-08-03 19:52:23 +02:00
See `Copyright.txt`_ for details.
.. _`Copyright.txt`: Copyright.txt