summaryrefslogtreecommitdiffstats
path: root/Help/dev
diff options
context:
space:
mode:
authorMarc Chevrier <marc.chevrier@gmail.com>2020-05-04 21:22:02 (GMT)
committerMarc Chevrier <marc.chevrier@gmail.com>2020-05-07 10:06:08 (GMT)
commit2faa3f6c55d2288316419f3efb8a483904a295f2 (patch)
tree8f4227f0e5299b5f6647e2e94cd7d52e55e643f5 /Help/dev
parent75e87e3db402c80390fa05c6b36ffab27089a46b (diff)
downloadCMake-2faa3f6c55d2288316419f3efb8a483904a295f2.zip
CMake-2faa3f6c55d2288316419f3efb8a483904a295f2.tar.gz
CMake-2faa3f6c55d2288316419f3efb8a483904a295f2.tar.bz2
Refactoring: Third-parties public headers are under cm3p prefix
Fixes: #20666
Diffstat (limited to 'Help/dev')
-rw-r--r--Help/dev/source.rst15
1 files changed, 15 insertions, 0 deletions
diff --git a/Help/dev/source.rst b/Help/dev/source.rst
index 65a6adf..0ccb8f4 100644
--- a/Help/dev/source.rst
+++ b/Help/dev/source.rst
@@ -163,6 +163,18 @@ It is allowed to pass raw pointers between objects to enable objects sharing.
A raw pointer **must** not be deleted. Only the object(s) owning the smart
pointer are allowed to delete dynamically allocated memory.
+Third Parties
+=============
+
+To build CMake, some third parties are needed. Under ``Utilities``
+directory, are versions of these third parties which can be used as an
+alternate to the ones provided by the system.
+
+To enable the selection of the third parties between the system and CMake ones,
+in CMake sources, third parties headers must be prefixed by ``cm3p/``
+(for example: ``<cm3p/json/reader.h>``). These wrappers are located under
+``Utilities/cm3p`` directory.
+
Source Tree Layout
==================
@@ -208,6 +220,9 @@ The CMake source tree is organized as follows.
* ``Utilities/std/cmext``:
Extensions to the C++ STL.
+ * ``Utilities/cm3p``:
+ Public headers for third parties needed to build CMake.
+
* ``Utilities/Sphinx/``:
Sphinx configuration to build CMake user documentation.