Nastaví název, verzi a povolovací jazyky pro celý projekt.
project(<PROJECT-NAME> )project(<PROJECT-NAME> ]]] )
Nastaví název projektu a uloží jej do proměnnéPROJECT_NAME
. Kromě toho nastaví proměnné
-
PROJECT_SOURCE_DIR
,<PROJECT-NAME>_SOURCE_DIR
-
PROJECT_BINARY_DIR
,<PROJECT-NAME>_BINARY_DIR
Pokud je zadáno VERSION
, dané komponenty musí být nezáporná celá čísla.Není-li VERSION
zadáno, je výchozí verzí prázdný řetězec. VERSION
Volbu VERSION
nelze použít, pokud není zásada CMP0048
nastavena na NEW
.
Příkaz project()
ukládá číslo verze a jeho složkyv proměnných
-
PROJECT_VERSION
,<PROJECT-NAME>_VERSION
-
PROJECT_VERSION_MAJOR
,<PROJECT-NAME>_VERSION_MAJOR
-
PROJECT_VERSION_MINOR
,<PROJECT-NAME>_VERSION_MINOR
-
PROJECT_VERSION_PATCH
,<PROJECT-NAME>_VERSION_PATCH
-
PROJECT_VERSION_TWEAK
,<PROJECT-NAME>_VERSION_TWEAK
Proměnné odpovídající nespecifikovaným verzím jsou nastaveny na prázdný řetězec(pokud je politika CMP0048
nastavena na NEW
).
Volitelně můžete určit, které jazyky váš projekt podporuje. příklady jazyků jsou C
, CXX
(tj. C++), Fortran
atd. ve výchozím nastavení jsou povoleny C
a CXX
, pokud nejsou zadány žádné jazykové volby. Zadejte jazyk NONE
nebo použijte klíčové slovo LANGUAGES
a nevypisujte žádné jazyky, abyste vynechali povolení jakýchkoli jazyků.
Pokud existuje proměnná s názvem CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE
,soubor, na který tato proměnná ukazuje, bude zařazen jako poslední krok příkazuproject.
Soubor nejvyšší úrovně CMakeLists.txt
pro projekt musí obsahovat přímé volání příkazu project()
; načtení příkazu include()
nestačí. Pokud takové volání neexistuje, CMake implicitně přidá na začátek takové volání, které povolí výchozí jazyky (C
a CXX
).
Poznámka
Volání příkazu cmake_minimum_required()
na začátku souboru nejvyšší úrovně CMakeLists.txt
ještě před voláním příkazuproject()
. Je důležité stanovit nastavení verze a politiky před vyvoláním dalších příkazů, jejichž chování mohou ovlivnit. Viz také zásady CMP0000
.
.