CMake 3.17.0 vem com um novo gerador de script Ninja, melhorias e muito mais

O lançamento de a nova versão do gerador de script de código aberto para várias plataformas CFaça 3.17, em que desenvolvedores trabalharam adicionar um novo gerador de script chamado "Ninja Multi-Config", melhorias no gerador de script do Visual Studio, otimizações gerais e muito mais.

Para quem não sabe CMakeName, eles deveriam saber que é uma geração de código multiplataforma ou ferramenta de automação que atua como uma alternativa ao Autotools e é usado em projetos como KDE, LLVM / Clang, MySQL, MariaDB, ReactOS e Blender.

CMakeName é notável por fornecer uma linguagem de script simples, significa expandir a funcionalidade entre os módulos, número mínimo de dependências (sem vinculação a M4, Perl ou Python), suporte para cache, presença de ferramentas para compilação cruzada, suporte para geração de arquivos de construção para uma ampla gama de sistemas de construção e compiladores, a presença de utilitários ctest e cpack para definir scripts de teste e construção, utilitário cmake-gui para configurar parâmetros de construção interativamente.

Este utilitário usado para controlar o processo de compilação do software usando arquivos de configuração simples e independentes de plataforma. Gera makefiles e áreas de trabalho nativos que podem ser usados ​​no ambiente de desenvolvimento desejado.

É comparável ao sistema de construção GNU Unix em que o processo é controlado por arquivos de configuração, no caso do CMake denominado CMakeLists.txt.

O que há de novo no CMake 3.17.0

Como mencionado no início, uma das principais novidades que se destacam nesta nova versão do CMake 3.17.0 é o adicionar um novo gerador de script de construção baseado em ferramentas Ninja, que tem o nome de «Ninja Multi-Configuração«, Que difere do gerador anterior porque este novo gerador fornece a capacidade de processar várias configurações de construção ao mesmo tempo.

Entretanto, no gerador de script de construção Para Visual Studio, agora você pode definir arquivos de origem anexados a cada configuração.

A capacidade de definir meta-parâmetros para CUDA ("Cuda_std_03", "cuda_std_14", etc.) foi adicionado às ferramentas para configurar funções do compilador (funções de compilação).

Além disso, o anúncio menciona que variáveis ​​foram adicionadas «CMAKE_CUDA_RUNTIME_LIBRARY"E"CUDA_RUNTIME_LIBRARY»Para selecionar o tipo de bibliotecas de tempo de execução ao usar CUDA e também o módulo« FindCUDAToolkit »para determinar as ferramentas CUDA disponíveis no sistema sem incluir a linguagem CUDA.

No CMake 3.17.0 o comando «–Debug-find»Foi adicionado para exibir diagnósticos legíveis adicionais durante a pesquisa. Para fins semelhantes, a variável CMAKE_FIND_DEBUG_MODE.

Adicionado suporte para encontrar ferramentas CURL no módulo «FindCURL» usando os arquivos de configuração "CURLConfig.cmake" gerados pelo cmake. Para desativar este comportamento, a variável CURL_NO_CURL_CMAKE é fornecida.

O módulo FindPython adiciona a capacidade de pesquisar componentes Python em ambientes virtuais controlados por «município".

Adicionado a opção «–Sem testes = [erro | ignorar]»Para a utilidade ctest para determinar o comportamento na ausência de evidências e "–repeat" para especificar as condições para reiniciar os testes (até que passe, após o tempo limite).

Das outras alterações mencionadas no anúncio:

  • Construir propriedades de destino INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES e INTERFACE_LINK_DEPENDS eles foram transferidos entre as dependências internas das bibliotecas montadas estaticamente.
  • Ao usar o kit de ferramentas MinGW, a busca por arquivos DLL usando o comando encontrar_biblioteca ele está desabilitado por padrão (uma tentativa é feita para importar as bibliotecas ".dll.a").
  • A lógica de escolher o utilitário ninja no gerador Ninja agora não depende do nome do arquivo executável - o primeiro utilitário é usado ninja, ninja o Samu encontrado, que é encontrado nos caminhos definidos por meio da variável de ambiente PATH.
  • O comando "-Erm»Foi adicionado ao utilitário cmake, que pode ser usado para remover arquivos e diretórios em vez dos comandos separados«-E remover"E"-E remove_directory".

Finalmente se você quiser saber mais sobre isso, você pode verificar o anúncio desta nova versão no link a seguir


O conteúdo do artigo segue nossos princípios de Ética editorial. Para relatar um erro, clique Clique aqui.

Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.