summaryrefslogtreecommitdiffstats
path: root/Help/command/project.rst
Commit message (Collapse)AuthorAgeFilesLines
* Languages: Add support for Objective-C++Steve Wilson2019-09-281-2/+2
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C++ compiler determination and identification. Add Modules to check Objective-C++ compiler flags, source compilations, program checks, etc... Use OBJCXX as the designator of the language, eg: project(foo OBJCXX) Add various tests for Objective-C++ language features. Add tests to preserve C++ handling of .M and .mm files when Objective-C++ is not a configured language. Co-authored-by: Cristian Adam <cristian.adam@gmail.com>
* Languages: Add support for Objective-CSteve Wilson2019-09-281-1/+2
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C compiler determination and identification. Add Modules to check Objective-C compiler flags, source compilations, program checks, etc... Use OBJC as the designator of the language, eg: project(foo OBJC) Add various tests for Objective-C language features. Add tests to preserve C++ handling of .m and .mm files when OBJC is not a configured language. Co-Authored-By: Cristian Adam <cristian.adam@gmail.com>
* Help: move code injection vars to their own sectionCraig Scott2019-06-301-8/+13
| | | | | The docs for CMAKE_PROJECT_<projName>_INCLUDE and CMAKE_PROJECT_INCLUDE did not define the order of inclusion if both were set.
* Help: Remove self-references from project() docsCraig Scott2019-06-291-5/+5
|
* cmMakefile: Enforce explicit use of project() commandBartosz Kosiorek2019-05-061-7/+8
| | | | Fixes: 17714
* project: Add variable CMAKE_PROJECT_INCLUDE_BEFORERuslan Baratov2019-04-011-0/+4
|
* project: Add variable CMAKE_PROJECT_INCLUDERuslan Baratov2019-03-271-3/+3
|
* Help: move description of CMAKE_PROJECT_* variablesJoachim Wuttke (o)2018-10-091-8/+16
| | | | Describe these variables along with the other variables.
* Help: Describe options of command project in a definition list.Joachim Wuttke (l)2018-10-091-51/+72
| | | | | Also add section headers; explain default setting of optional argument variables.
* Help: make the two signatures of command "project" orthogonalJoachim Wuttke (l)2018-10-091-1/+1
|
* project(): Ensure DESCRIPTION and HOMEPAGE_URL variables are setCraig Scott2018-10-071-0/+2
| | | | | | | | If a project() call does not have DESCRIPTION or HOMEPAGE_URL options, it must still set the relevant variables or else those variables will inherit values from an earlier project() call. That is inconsistent with how VERSION is handled and is likely to be unexpected. The docs were also ambiguous about what should happen in such cases.
* CPack: Use project version as default for `CPACK_PACKAGE_VERSION`Alex Turbov2018-05-021-2/+3
| | | | | | | | | | * Introduce `CMAKE_PROJECT_VERSION` and the corresponsing components: `CMAKE_PROJECT_VERSION_MAJOR`, `CMAKE_PROJECT_VERSION_MINOR`, `CMAKE_PROJECT_VERSION_PATCH` and `CMAKE_PROJECT_VERSION_TWEAK`. * `CPack` module use `CMAKE_PROJECT_VERSION_MAJOR`, `CMAKE_PROJECT_VERSION_MINOR` and `CMAKE_PROJECT_VERSION_PATCH` to initialize corresponsing CPack variables.
* project: Add HOMEPAGE_URL named parameterAlex Turbov2018-03-161-3/+13
| | | | | | | | | This sets variables like PROJECT_HOMEPAGE_URL, which can be used as default values for various things (packaging modules, doxygen defaults, etc.). Some packaging modules have been updated to do this as part of this commit. Co-Author: Craig Scott <craig.scott@crascit.com>
* project: Add <PROJECT-NAME>_DESCRIPTIONCraig Scott2018-03-161-3/+4
| | | | For consistency with the VERSION keyword, also define the <PROJECT-NAME>_DESCRIPTION variable.
* Help: Fix incorrect CMAKE_PROJECT_xxx docsCraig Scott2018-03-131-2/+5
| | | | | | | | | The docs for CMAKE_PROJECT_NAME and CMAKE_PROJECT_DESCRIPTION were erroneously documenting the behavior of PROJECT_NAME and PROJECT_DESCRIPTION respectively. Fix these and update the project() docs to also mention CMAKE_PROJECT_NAME and CMAKE_PROJECT_DESCRIPTION. Fixes: #17815
* Help: Document that ASM should be enabled lastBrad King2017-12-061-1/+5
| | | | | | | ASM should be enabled after C and/or CXX because we consider the compilers for those languages as possible assemblers. Issue: #17532
* project: Add `DESCRIPTION` parameterAlex Turbov2017-04-111-0/+5
| | | | | | | | | | | | | | | | | It is quite often the project description has used in a real world software. Examples include: * part of a help screen of the application * builtin resources (`*.rc` files, data for "About" dialog of a GUI app, & etc) * most generators for CPack can use it * it could be used by documentary software (Doxygen, Sphinx) which is usually integrated to CMake based projects via `add_custom_target()` Now `project()` call learned an optional `DESCRIPTION` parameter with a short string describing a project. Being specified, it would set the `PROJECT_DESCRIPTION` variable which could be used in `configure_file()` or whatever user wants. Also `PROJECT_DESCRIPTION` is a default value for `CPACK_PACKAGE_DESCRIPTION_SUMMARY`.
* Help: Document that cmake_minimum_required should be called firstBrad King2015-04-291-0/+7
| | | | | | | | | Many projects put their project() call first, but the actions taken by this command can be influenced by policies and other information set by a call to cmake_minimum_required. Document in each of these two commands that cmake_minimum_required should be called first. Suggested-by: Alan W. Irwin
* project: Manage VERSION variablesBrad King2014-01-291-1/+26
| | | | | | | | | | | | | | | | Teach the project() command to set variables {PROJECT,<PROJECT-NAME>}_VERSION{,_MAJOR,_MINOR,_PATCH,_TWEAK} holding the project version number and its components. Add project() command option "VERSION" to specify the version explicitly, and default to the empty string when it is not given. Since this clears variables when no VERSION is given, this may change behavior for existing projects that set the version variables themselves prior to calling project(). Add policy CMP0048 for compatibility. Suggested-by: Alex Neundorf <neundorf@kde.org>
* project: Add optional LANGUAGES keywordBrad King2014-01-291-2/+3
| | | | | | | Teach the project() command to recognize an optional "LANGUAGES" keyword after the project name and prior to the list of languages. Do not allow multiple copies of the keyword. If the keyword is specified and no languages are listed, imply NONE.
* Help: Format project command and variable documentationBrad King2014-01-291-19/+23
| | | | Also add document for CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE variable.
* Convert builtin help to reStructuredText source filesKitware Robot2013-10-151-0/+27
Run the convert-help.bash script to convert documentation: ./convert-help.bash "/path/to/CMake-build/bin" Then remove it.