Geen omschrijving

Brad King 0502fce2a4 Merge branch 'release-4.2' 2 weken geleden
.github eb705b9531 Update links to gitlab.kitware.com repos to add `-/` 5 jaren geleden
.gitlab d5cfe692c9 Merge topic 'ci-valgrind' 3 weken geleden
Auxiliary 032b091c3e Merge topic 'unity-filename-prefix' 1 maand geleden
Help a3267f6c6b Merge topic 'tutorial-fix-ipo' 2 weken geleden
Licenses 9ad10c8feb cmake-gui: Reference LGPLv3 when redistributing Qt 9 jaren geleden
Modules 343ee5b9ee UseJava: add INCLUDE_MODULES argument to add_jar 2 weken geleden
Packaging 1772622772 LICENSE: Replace references to Copyright.txt with LICENSE.rst 8 maanden geleden
Source 1f0004468d CMake Nightly Date Stamp 2 weken geleden
Templates 6f0d245083 VS: Fix `/dynamicdeopt` flag table entry order for v145 toolset 1 maand geleden
Tests 1453f20ea1 Merge topic 'fix-tests-regex' 2 weken geleden
Utilities 6b5877a176 libarchive: Backport "parse_date: handle dates in 2038 and beyond" 1 maand geleden
.clang-format 08f1cae4e8 clang-format: Enforce "east const" qualifier placement 9 maanden geleden
.clang-tidy 646f37b473 clang-tidy: disable modernize-concat-nested-namespaces 1 jaar geleden
.codespellrc 8d83487e60 CONTRIBUTORS: Factor contributors list out of license file 8 maanden geleden
.editorconfig 8c14c6bd0b Add .editorconfig file 4 jaren geleden
.gitattributes b8dd3b208a clang-format: Apply formatting to HIP sources with .hip extension 6 maanden geleden
.gitignore 1e2d19ea4f gitignore: Tell tools honoring .gitignore to ignore .git too 9 maanden geleden
.gitlab-ci.yml e981fc4f4d gitlab-ci: add a job to test with Valgrind on Linux with Ninja 3 weken geleden
.hooks-config 1772622772 LICENSE: Replace references to Copyright.txt with LICENSE.rst 8 maanden geleden
.pre-commit-config.yaml 49e05f9569 pre-commit: bump to typos 1.36.1 1 maand geleden
.typos.toml a1b7710241 ci: configure 'typos' to tolerate a standard streambuf member 3 maanden geleden
CMakeCPack.cmake 2b12c3563e Merge topic 'patch-CPackIFWConfigureFile-min-version' 2 maanden geleden
CMakeCPackOptions.cmake.in f6c2f64d04 Utilities/Release: Update MSI generation to use WIX 4 1 jaar geleden
CMakeGraphVizOptions.cmake 77543bde41 Convert CMake-language commands to lower case 13 jaren geleden
CMakeLists.txt 58d5f34d31 Replace deprecated -Werror-implicit-function-declaration with -Werror= 3 maanden geleden
CMakeLogo.gif bde7f6c023 ENH: fancier logo 18 jaren geleden
CONTRIBUTING.rst 2d42a5444f LICENSE: Rename Copyright.txt to LICENSE.rst 8 maanden geleden
CONTRIBUTORS.rst a9bcf09edd CONTRIBUTORS: Update per-contributor hyperlinks 8 maanden geleden
CTestConfig.cmake 1772622772 LICENSE: Replace references to Copyright.txt with LICENSE.rst 8 maanden geleden
CTestCustom.cmake.in 61aed5e5f2 CTestCustom: ignore coverage results from coverage tests 1 maand geleden
CompileFlags.cmake 1b9e8f833f Linux: Compile with 64-bit time_t even on 32-bit architectures 4 maanden geleden
DartConfig.cmake 1772622772 LICENSE: Replace references to Copyright.txt with LICENSE.rst 8 maanden geleden
LICENSE.rst 8d83487e60 CONTRIBUTORS: Factor contributors list out of license file 8 maanden geleden
README.rst 2d42a5444f LICENSE: Rename Copyright.txt to LICENSE.rst 8 maanden geleden
bootstrap e4708f007b GenEx: Factor out a dedicated evaluation Context structure 1 maand geleden
cmake_uninstall.cmake.in edfa4d762d cmake_uninstall.cmake.in: Replace exec_program() with execute_process() 2 jaren geleden
configure 28531d1707 Simplify bootstrap script source dir detection 16 jaren geleden
sgconfig.yml 61743471d9 ast-grep: add a rule to find adjacent string literals in cmStrCat calls 5 maanden geleden

README.rst

CMake
*****

Introduction
============

CMake is a cross-platform, open-source build system generator.
For full documentation visit the `CMake Home Page`_ and the
`CMake Documentation Page`_. The `CMake Community Wiki`_ also
references useful guides and recipes.

.. _`CMake Home Page`: https://cmake.org
.. _`CMake Documentation Page`: https://cmake.org/documentation
.. _`CMake Community Wiki`: https://gitlab.kitware.com/cmake/community/-/wikis/home

CMake is maintained and supported by `Kitware`_ and developed in
collaboration with a productive community of contributors.

.. _`Kitware`: https://www.kitware.com/cmake

License
=======

CMake is distributed under the OSI-approved BSD 3-clause License.
See `LICENSE.rst`_ for details.

.. _`LICENSE.rst`: LICENSE.rst

Building CMake
==============

Supported Platforms
-------------------

* Microsoft Windows
* Apple macOS
* Linux
* FreeBSD
* OpenBSD
* Solaris
* AIX

Other UNIX-like operating systems may work too out of the box, if not
it should not be a major problem to port CMake to this platform.
Please post to the `CMake Discourse Forum`_ to ask if others have
had experience with the platform.

.. _`CMake Discourse Forum`: https://discourse.cmake.org

Building CMake with CMake
-------------------------

You can build CMake as any other project with a CMake-based build system:
run an already-installed CMake on this source tree with your preferred
generator and options. Then build it and install it.

To build the documentation, install `Sphinx`_ and configure CMake with
``-DSPHINX_HTML=ON`` and/or ``-DSPHINX_MAN=ON`` to enable the "html" or
"man" builder. Add ``-DSPHINX_EXECUTABLE=/path/to/sphinx-build`` if the
tool is not found automatically.

To run the test suite, run ``ctest`` in the CMake build directory after
building. See the `CMake Testing Guide`_ for details.

.. _`Sphinx`: https://sphinx-doc.org
.. _`CMake Testing Guide`: Help/dev/testing.rst

Building CMake from Scratch
---------------------------

UNIX/Mac OSX/MinGW/MSYS/Cygwin
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

You need to have a C++ compiler (supporting C++11) and a ``make`` installed.
Run the ``bootstrap`` script you find in the source directory of CMake.
You can use the ``--help`` option to see the supported options.
You may use the ``--prefix=`` option to specify a custom
installation directory for CMake. Once this has finished successfully,
run ``make`` and ``make install``.

For example, if you simply want to build and install CMake from source,
you can build directly in the source tree::

$ ./bootstrap && make && sudo make install

Or, if you plan to develop CMake or otherwise run the test suite, create
a separate build tree::

$ mkdir build && cd build
$ ../bootstrap && make

Windows
^^^^^^^

There are two ways for building CMake under Windows:

1. Compile with MSVC from VS 2015 or later.
You need to download and install a binary release of CMake. You can get
these releases from the `CMake Download Page`_. Then proceed with the
instructions above for `Building CMake with CMake`_.

2. Bootstrap with MinGW under MSYS2.
Download and install `MSYS2`_. Then install the required build tools::

$ pacman -S --needed git base-devel mingw-w64-x86_64-gcc

and bootstrap as above.

.. _`CMake Download Page`: https://cmake.org/download
.. _`MSYS2`: https://www.msys2.org/

Reporting Bugs
==============

If you have found a bug:

1. If you have a patch, please read the `CONTRIBUTING.rst`_ document.

2. Otherwise, please post to the `CMake Discourse Forum`_ and ask about
the expected and observed behaviors to determine if it is really
a bug.

3. Finally, if the issue is not resolved by the above steps, open
an entry in the `CMake Issue Tracker`_.

.. _`CMake Issue Tracker`: https://gitlab.kitware.com/cmake/cmake/-/issues

Contributing
============

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

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