Lançamento do sistema de construção CMake 4.0.0

Foi lançado o CMake 4.0.0, um gerador de scripts de build multiplataforma e de código aberto, que serve como uma alternativa ao Autotools e é utilizado em projetos como KDE, LLVM/Clang, MySQL, MariaDB, ReactOS e Blender. O código do CMake é escrito em C++ e distribuído sob a licença BSD.

O CMake é notável por fornecer uma linguagem de scripts simples, com meios de extensão de funcionalidade através de módulos, suporte a cache, ferramentas para cross-compilation, geração de arquivos de build para uma ampla gama de sistemas de build e compiladores, além de utilitários ctest e cpack para definir scripts de teste e empacotamento, e uma interface gráfica cmake-gui para configuração interativa dos parâmetros de build.

Principais mudanças:

  • A compatibilidade com versões do CMake anteriores à versão 3.5 foi descontinuada. Ao vincular a versões não suportadas nas funções cmake_minimum_required() e cmake_policy(), agora será gerada uma mensagem de erro.
  • Foi adicionada a variável de ambiente "CMAKE_POLICY_VERSION_MINIMUM" para substituir a versão mínima do CMake necessária para compilar o projeto. Essa variável adicional permite evitar alterações nas chamadas cmake_minimum_required(VERSION) e cmake_policy(VERSION) no próprio projeto, por exemplo, para configurar as políticas de versão em projetos que não preveem essa possibilidade.
  • A expressão do gerador "$" agora inclui a operação "NATIVE_PATH" para transformar o caminho do arquivo da apresentação do CMake (onde são usados "\/" para separação de diretórios) no caminho do sistema (onde, em sistemas Unix-like, é usado "\/" e, no Windows, "\\").
  • Na plataforma macOS, ao usar geradores de build baseados no Ninja e geradores Makefile, se um compilador estiver presente no diretório "/usr/bin", ele será mantido como está, sem vinculação ao compilador do Xcode. Na construção para a plataforma macOS, foi descontinuada a seleção do SDK e a passagem da flag "-isysroot" ao compilador (o SDK agora é escolhido pelo próprio compilador, e não pelo CMake).
  • Foi adicionada a propriedade LINK_WARNING_AS_ERROR, que trata os avisos do linker como erros. Para desativar essa propriedade, foi adicionada a opção de linha de comando "—link-no-warning-as-error".
  • Adicionada à utilidade cmake a opção "—project-file" para definir um nome alternativo para o arquivo CMakeLists.txt.
  • No gerador CPack foi adicionada a possibilidade de criar arquivos tar não compactados.
  • Na função target_link_libraries() e nas variáveis CMAKE_EXE_LINKER_FLAGS*, CMAKE_SHARED_LINKER_FLAGS*, CMAKE_MODULE_LINKER_FLAGS* foi adicionada a support ao prefixo "LINKER:".
  • Novas variáveis adicionadas:
    • 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.
  • Novas propriedades adicionadas: DEBUGGER_WORKING_DIRECTORY e VS_SOLUTION_ITEMS (para anexar arquivos ao .sln para o Visual Studio).
  • Garantida a criação de builds prontos do CMake para SunOS para as arquiteturas sparc64 e x86_64.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster