cmake/CONTRIBUTING.rst

75 lines
2.9 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.
2016-10-30 18:24:19 +01:00
Please subscribe and post to the `CMake Developers List`_ to raise
discussion of development topics.
2014-08-03 19:52:23 +02:00
.. _`Kitware`: http://www.kitware.com/cmake
2015-11-17 17:22:37 +01:00
.. _`CMake Developers List`: https://cmake.org/mailman/listinfo/cmake-developers
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.
2017-07-20 19:35:53 +02:00
#. Run `Utilities/SetupForDevelopment.sh`_ for local configuration.
#. See the `CMake Source Code Guide`_ for coding guidelines.
2016-10-30 18:24:19 +01:00
#. 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`_.
2016-10-30 18:24:19 +01:00
#. Push a 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
.. _`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