En ny version av den plattformsoberoende öppna byggscripteraren CMake 4.0.0 har slÀppts, som fungerar som ett alternativ till Autotools och anvÀnds i projekt som KDE, LLVM/Clang, MySQL, MariaDB, ReactOS och Blender. CMake-koden Àr skriven i C++ och distribueras under BSD-licensen.
CMake Àr anmÀrkningsvÀrt för att tillhandahÄlla ett enkelt script-sprÄk, med möjligheter att utöka funktionaliteten via moduler, stöd för caching, verktyg för korskompilering, stöd för generering av byggfiler för ett brett spektrum av byggsystem och kompilatorer, samt verktygen ctest och cpack för testnings- och paketbyggningsscript, och verktyget cmake-gui för interaktiv konfiguration av byggparametrar.
Huvudsakliga förÀndringar:
- Stödet för CMake-versioner före 3.5 har upphört. NÀr man kopplar till icke-stödda versioner i funktionerna cmake_minimum_required() och cmake_policy() kommer nu ett felmeddelande att visas.
- En miljövariabel "CMAKE_POLICY_VERSION_MINIMUM" har lagts till för att ÄsidosÀtta den minimi CMake-version som krÀvs för att bygga projektet. Denna nya variabel gör det möjligt att undvika att Àndra anropen cmake_minimum_required(VERSION) och cmake_policy(VERSION) i projektet, till exempel för att konfigurera versionspolicyn i projekt dÀr denna möjlighet inte finns.
- I generatoruttrycket "$" har operationen "NATIVE_PATH" lagts till för att konvertera filvÀgen frÄn CMake-format (dÀr kataloger alltid separeras med "/") till systemvÀg (i Unix-liknande system anvÀnds " /", medan Windows anvÀnder "\").
- PÄ macOS-plattformen har anvÀndningen av byggscriptsgeneratorer baserade pÄ Ninja-verktyget och Makefile-generatorer, om en kompilator finns i katalogen "/usr/bin", kvarlÀmnats utan bundenhet till kompilatorn i Xcode. Vid byggnation för macOS har valet av SDK och överföringen av flaggan "-isysroot" till kompilatorn (SDK:n vÀljs nu av kompilatorn, inte CMake) upphört som standard.
- Egenskapen LINK_WARNING_AS_ERROR har lagts till, vilket innebĂ€r att lĂ€nkvarningar tolkas som fel. För att stĂ€nga av denna egenskap har kommandoradsalternativet "âlink-no-warning-as-error" lagts till.
- Till cmake-verktyget har alternativet "âproject-file" lagts till för att ange ett alternativt namn för CMakeLists.txt-filen.
- I CPack-genratorn har möjligheten att skapa okomprimerade tar-arkiv lagts till.
- I kommandot target_link_libraries() och variablerna CMAKE_EXE_LINKER_FLAGS*, CMAKE_SHARED_LINKER_FLAGS*, CMAKE_MODULE_LINKER_FLAGS* har stödet för prefixet "LINKER:" lagts till.
- Nya variabler har lagts till:
- CMAKE_EXECUTE_PROCESS_COMMAND_ERROR_IS_FATAL,
- CMAKE__LINK_MODE,
- CMAKE__DEVICE_LINK_MODE,
- CMAKE_LINK_WARNING_AS_ERROR,
- CMAKE_MSVC_RUNTIME_CHECKS,
- CMAKE_DEBUGGER_WORKING_DIRECTORY,
- CMAKE_XCODE_SCHEME_LLDB_INIT_FILE,
- CMAKE_XCODE_SCHEME_TEST_CONFIGURATION.
- Nya egenskaper har lagts till: DEBUGGER_WORKING_DIRECTORY och VS_SOLUTION_ITEMS (för att fÀsta filer till .sln för Visual Studio).
- Det har skapats fÀrdiga CMake-byggsatser för SunOS för arkitekturerna sparc64 och x86_64.
KĂ€lla: opennet.ru
