Wydanie systemu budowania CMake 4.0.0

Wydano wydanie wieloplatformowego, otwartego generatora skryptów build CMake 4.0.0, stanowiącego alternatywę dla Autotools i używanego w takich projektach jak KDE, LLVM/Clang, MySQL, MariaDB, ReactOS i Blender. Kod CMake napisany jest w języku C++ i rozpowszechniany na licencji BSD.

CMake wyróżnia się oferowaniem prostego języka skryptów, funkcjonalnością rozszerzenia poprzez moduły, wsparciem dla cache, narzędziami do krzyżowej kompilacji, generowaniem plików kompilacyjnych dla szerokiego zakresu systemów budowlanych i kompilatorów, a także narzędziami ctest i cpack do definiowania skryptów testowych i budowania pakietów, oraz narzędziem cmake-gui do interaktywnego konfigurowania parametrów kompilacji.

Główne zmiany:

  • Wsparcie dla wersji CMake przed wydaniem 3.5 zostało zakończone. Przy powiązaniu z nieobsługiwanymi wersjami w funkcjach cmake_minimum_required() i cmake_policy() teraz pojawi się błąd.
  • Dodano zmienną środowiskową "CMAKE_POLICY_VERSION_MINIMUM" do nadpisania minimalnej wersji CMake, której funkcjonalność jest wymagana do budowy projektu. Dodana zmienna umożliwia ominięcie konieczności zmiany wywołań cmake_minimum_required(VERSION) i cmake_policy(VERSION) w samym projekcie, na przykład do konfiguracji polityki wersji w projektach, które nie przewidują takiej możliwości.
  • Do wyrażenia generatora "$$" dodano operację "NATIVE_PATH" do konwersji ścieżki plikowej z reprezentacji CMake (gdzie zawsze do rozdzielania katalogów używa się "/") na ścieżkę systemową (w systemach Unix używa się "/", a w Windows - "\").
  • Na platformie macOS, przy użyciu generatorów skryptów build opartych na narzędziu Ninja i generatorach Makefile, jeśli w katalogu "/usr/bin" jest obecny kompilator, to pozostaje on bez zmian, bez powiązania z kompilatorem w Xcode. Przy budowaniu na platformie macOS domyślnie zaprzestano wyboru SDK i przekazywania kompilatorowi flagi "-isysroot" (SDK teraz wybiera sam kompilator, a nie CMake).
  • Dodano właściwość LINK_WARNING_AS_ERROR, która traktuje ostrzeżenia linkera jako błędy. Aby wyłączyć działanie tej właściwości, dodano opcję wiersza poleceń "—link-no-warning-as-error".
  • Do narzędzia cmake dodano opcję "—project-file" do określenia alternatywnej nazwy pliku CMakeLists.txt.
  • Do generatora CPack dodano możliwość tworzenia nieskompresowanych archiwów tar.
  • Do komendy target_link_libraries() oraz zmiennych CMAKE_EXE_LINKER_FLAGS*, CMAKE_SHARED_LINKER_FLAGS*, CMAKE_MODULE_LINKER_FLAGS* dodano wsparcie dla prefiksu "LINKER:".
  • Dodano nowe zmienne:
    • 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.
  • Dodano nowe właściwości: DEBUGGER_WORKING_DIRECTORY oraz VS_SOLUTION_ITEMS (do dołączania plików do .sln dla Visual Studio).
  • Zapewniono gotowe zestawy CMake dla SunOS dla architektur sparc64 i x86_64.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster