Răsfoiți Sursa

Help: Format project command and variable documentation

Also add document for CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE variable.
Brad King 12 ani în urmă
părinte
comite
00007dcc36

+ 23 - 19
Help/command/project.rst

@@ -1,27 +1,31 @@
 project
 -------
 
-Set a name for the entire project.
+Set a name and enable languages for the entire project.
 
-::
+.. code-block:: cmake
 
-  project(<projectname> [languageName1 languageName2 ... ] )
+ project(<PROJECT-NAME> [<language-name>...])
 
-Sets the name of the project.  Additionally this sets the variables
-<projectName>_BINARY_DIR and <projectName>_SOURCE_DIR to the
-respective values.
+Sets the name of the project and stores the name in the
+:variable:`PROJECT_NAME` variable.  Additionally this sets variables
+
+* :variable:`PROJECT_SOURCE_DIR`,
+  :variable:`<PROJECT-NAME>_SOURCE_DIR`
+* :variable:`PROJECT_BINARY_DIR`,
+  :variable:`<PROJECT-NAME>_BINARY_DIR`
 
 Optionally you can specify which languages your project supports.
-Example languages are CXX (i.e.  C++), C, Fortran, etc.  By default C
-and CXX are enabled.  E.g.  if you do not have a C++ compiler, you can
-disable the check for it by explicitly listing the languages you want
-to support, e.g.  C.  By using the special language "NONE" all checks
-for any language can be disabled.  If a variable exists called
-CMAKE_PROJECT_<projectName>_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 project() command; loading one through the
-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).
+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`` 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``).

+ 1 - 0
Help/manual/cmake-variables.7.rst

@@ -121,6 +121,7 @@ Variables that Change Behavior
    /variable/CMAKE_POLICY_DEFAULT_CMPNNNN
    /variable/CMAKE_PREFIX_PATH
    /variable/CMAKE_PROGRAM_PATH
+   /variable/CMAKE_PROJECT_PROJECT-NAME_INCLUDE
    /variable/CMAKE_SKIP_INSTALL_ALL_DEPENDENCY
    /variable/CMAKE_STAGING_PREFIX
    /variable/CMAKE_SYSTEM_IGNORE_PATH

+ 6 - 0
Help/variable/CMAKE_PROJECT_PROJECT-NAME_INCLUDE.rst

@@ -0,0 +1,6 @@
+CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE
+------------------------------------
+
+A CMake language file or module to be included by the :command:`project`
+command.  This is is intended for injecting custom code into project
+builds without modifying their source.

+ 3 - 3
Help/variable/PROJECT-NAME_BINARY_DIR.rst

@@ -3,6 +3,6 @@
 
 Top level binary directory for the named project.
 
-A variable is created with the name used in the PROJECT command, and
-is the binary directory for the project.  This can be useful when
-SUBDIR is used to connect several projects.
+A variable is created with the name used in the :command:`project` command,
+and is the binary directory for the project.  This can be useful when
+:command:`add_subdirectory` is used to connect several projects.

+ 3 - 3
Help/variable/PROJECT-NAME_SOURCE_DIR.rst

@@ -3,6 +3,6 @@
 
 Top level source directory for the named project.
 
-A variable is created with the name used in the PROJECT command, and
-is the source directory for the project.  This can be useful when
-add_subdirectory is used to connect several projects.
+A variable is created with the name used in the :command:`project` command,
+and is the source directory for the project.  This can be useful when
+:command:`add_subdirectory` is used to connect several projects.

+ 1 - 1
Help/variable/PROJECT_BINARY_DIR.rst

@@ -3,4 +3,4 @@ PROJECT_BINARY_DIR
 
 Full path to build directory for project.
 
-This is the binary directory of the most recent PROJECT command.
+This is the binary directory of the most recent :command:`project` command.

+ 1 - 1
Help/variable/PROJECT_NAME.rst

@@ -3,4 +3,4 @@ PROJECT_NAME
 
 Name of the project given to the project command.
 
-This is the name given to the most recent PROJECT command.
+This is the name given to the most recent :command:`project` command.

+ 1 - 1
Help/variable/PROJECT_SOURCE_DIR.rst

@@ -3,4 +3,4 @@ PROJECT_SOURCE_DIR
 
 Top level source directory for the current project.
 
-This is the source directory of the most recent PROJECT command.
+This is the source directory of the most recent :command:`project` command.