ristplatvormilise avatud ehitus сценарийide generaatori väljaanne , mis on Autotools'ile alternatiiv ja mida kasutatakse sellistes projektides nagu KDE, LLVM/Clang, MySQL, MariaDB, ReactOS ja Blender. CMake'i kood on kirjutatud C++ keeles ja levitatakse BSD litsentsi alusel.
CMake paistab silma oma lihtsa сценарийide keele poolest, funktsionaalsuse laiendamise vahendite, miinimum sõltuvuste (ilma M4, Perl või Python seotuse), cache'i toe, ristkompileerimise tööriistade olemasolu, ehitusfailide genereerimise toetuse laiale valikule ehitus süsteemidele ja kompilaatoritele, samuti olemasolu utiliite ctest ja cpack testimise сценарийide ning pakettide ehitamise määratlemiseks, utiliidi cmake-gui interaktiivseks ehitusparameetrite seadistamiseks.
Peamised :
- CUDA keele jaoks on võimaldatud ehitamine Clang'i abil platvormidel, mis ei ole Windows. Eraldi CUDA kompileerimine ei ole praegu toetatud ühelgi platvormil.
- Lisa tugi CMake'i сценарийide profileerimiseks, kasutades valikuid „—profiling-output” ja „—profiling-format”.
- add_library() ja add_executable() käskudesse on lisatud alias-eesmärkide loomise tugi, mis viitavad mitteglobaalsetele imporditud eesmärkidele.
- Lisatud on cmake_language() käsk metaoperatsioonide teostamiseks skriptitud või sisseehitatud käskude üle.
- Lisatud on file(CONFIGURE) alamkäsk, mis on funktsionaalsuselt sarnane configure_file() käskule, ent edastab sisu stringina, mitte faili viitena.
- find_program(), find_library(), find_path() ja find_file() käskudesse on lisatud REQUIRED valik, mis käsib töötluse peatada veateatega, kui midagi ei leitud.
- Lisatud on muutuja "CMAKE_CUDA_ARCHITECTURES", et märkida CUDA arhitektuuri (seadistatakse automaatselt, kui muutuja "CMAKE_CUDA_COMPILER_ID" võtab väärtuse "NVIDIA").
- Unity-build'i valimiseks on lisatud omadus "UNITY_BUILD_MODE", mis määrab, millist algoritmi kasutavad generaatorid kaasatud algfailide grupeerimiseks (BATCH, GROUP).
- Linkimisflag'ide korrektsete väärtuste kontrollimiseks on lisatud CheckLinkerFlag moodul.
- On lisatud generaatori väljendid $, $, $ ja $.
- ctest tööriista on lisatud muutuja CTEST_RESOURCE_SPEC_FILE, et märkida ressursispetsifikatsiooni fail.
Allikas: opennet.ru
