"Fossies" - the Fresh Open Source Software Archive

Member "cmake-3.6.2-win32-x86/share/cmake-3.6/Help/command/project.rst" (7 Sep 2016, 2624 Bytes) of archive /windows/misc/cmake-3.6.2-win32-x86.zip:

As a special service "Fossies" has tried to format the requested source page into HTML format (assuming markdown format). Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field.


Set a name, version, and enable languages for the entire project.

.. code-block:: cmake

project(<PROJECT-NAME> [LANGUAGES] [<language-name>…]) project(<PROJECT-NAME> [VERSION [.[.[.]]]] [LANGUAGES <language-name>…])

Sets the name of the project and stores the name in the :variable:PROJECT_NAME variable. Additionally this sets variables

If VERSION is specified, given components must be non-negative integers. If VERSION is not specified, the default version is the empty string. The VERSION option may not be used unless policy :policy:CMP0048 is set to NEW.

The :command:project() command stores the version number and its components in variables

Variables corresponding to unspecified versions are set to the empty string (if policy :policy:CMP0048 is set to NEW).

Optionally you can specify which languages your project supports. Example languages are C, CXX (i.e. C++), Fortran, etc. By default C and CXX are enabled if no language options are given. Specify language NONE, or use the LANGUAGES keyword and list no languages, to skip enabling any languages.

If a variable exists called :variable:CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE, the file pointed to by that variable will be included as the last step of the project command.

The top-level CMakeLists.txt file for a project must contain a literal, direct call to the :command:project command; loading one through the :command:include command is not sufficient. If no such call exists CMake will implicitly add one to the top that enables the default languages (C and CXX).

.. note:: Call the :command:cmake_minimum_required command at the beginning of the top-level CMakeLists.txt file even before calling the project() command. It is important to establish version and policy settings before invoking other commands whose behavior they may affect. See also policy :policy:CMP0000.