Lanzamiento del sistema de compilación CMake 3.18

Presentado lanzamiento del generador de scripts de construcción de código abierto multiplataforma CMake 3.18, que actúa como una alternativa a Autotools y se utiliza en proyectos como KDE, LLVM/Clang, MySQL, MariaDB, ReactOS y Blender. El código de CMake está escrito en C++ y se distribuye bajo la licencia BSD.

CMake es notable por proporcionar un lenguaje de scripts simple, con medios para extender su funcionalidad a través de módulos, un mínimo número de dependencias (sin requerir M4, Perl o Python), soporte de caché, herramientas para compilación cruzada, generación de archivos de construcción para una amplia gama de sistemas de construcción y compiladores, herramientas ctest y cpack para definir scripts de prueba y empaquetado, y una utilidad cmake-gui para la configuración interactiva de parámetros de construcción.

Principales mejoras:

  • Para el lenguaje CUDA, se ha habilitado la posibilidad de realizar compilaciones utilizando Clang en plataformas distintas a Windows. La compilación separada de CUDA aún no es compatible en ninguna plataforma.
  • Se ha añadido soporte para el perfilado de scripts de CMake utilizando las opciones «—profiling-output» y «—profiling-format».
  • Se ha añadido soporte para crear objetivos de alias (Alias Targets) en los comandos add_library() y add_executable(), que hacen referencia a objetivos importados no globales.
  • Se ha añadido el comando cmake_language() para realizar operaciones meta sobre comandos script o incorporados.
  • Se ha añadido el subcomando file(CONFIGURE), que es similar en funcionalidad al comando configure_file(), pero pasa el contenido en forma de cadena en lugar de una referencia a un archivo.
  • En los comandos find_program(), find_library(), find_path() y find_file() se ha añadido la opción REQUIRED, que indica que el procesamiento debe detenerse con un error si no se encuentra nada.
  • Se ha añadido la variable «CMAKE_CUDA_ARCHITECTURES» para especificar la arquitectura CUDA (se establece automáticamente si la variable «CMAKE_CUDA_COMPILER_ID» tiene el valor «NVIDIA»).
  • Se ha añadido la propiedad «UNITY_BUILD_MODE» para seleccionar en los generadores el algoritmo para agrupar los archivos fuente incluidos (BATCH, GROUP).
  • Se ha añadido el módulo CheckLinkerFlag para verificar la validez de las banderas de enlazado.
  • Se han añadido las expresiones del generador $, $, $ y $.
  • Se ha añadido la variable CTEST_RESOURCE_SPEC_FILE a la utilidad ctest para especificar el archivo de especificación de recursos.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster