El sitio web de tnotstar

Temas específicos (topics)

Introducción a CMake

Fuente(s):

El sistema CMake facilita la construcción, prueba y empaquetado de projectos C/C++, por lo que sus creadores afirman que: CMake ayuda a los grupos a desarrollar código multi-plataforma, bien-probado y de alta calidad.

En general, se trata de un conjunto de herramientas, desarrolladas bajo el esquema de código abierto, que han sido diseñadas para construir, probar y empaquetar software.

El programa homónimo cmake es utilizado para la creación de especificaciones de control del proceso de construcción (e.g. compilación y enlazado) de programas. De este modo, mediante un conjunto de ficheros de configuración independientes de plataforma, pueden ser generados ficheros de construcción nativos para cada plataforma destino (v.gr. ficheros Makefile, ficheros de solución Visual Studio, etc.).

Apuntes de lecturas (readings)

Lectura: «CMake Tutorial» ―Kitware, Inc.

Fuente(s):

El siguiente tutorial muestra una secuencia de pasos para la configuración de un proyecto CMake, desde la configuración mínima hasta la más sofisticada:

Paso 1a: Un punto básico para el inicio

Para especificar cómo construir un projecto mínimo con CMake, debemos disponer de al menos dos (2) ficheros:

A continuación se muestra el programa fuente usado para este ejemplo:

#include <stdio.h>

int
main (void) {
    printf("Hello, CMake!\n");
    return 0;
}

Por su parte, el fichero de construcción mínimo requerido por CMake consiste de sólo tres (3) líneas de código:

cmake_minimum_required(VERSION 2.6)

project(tutorial)

add_executable(tutorial tutorial.c)

En la primera línea indicamos la versión mínima del programa CMake, que necesitaremos para generar los ficheros de construcción de nuestro proyecto. En la segunda línea definimos el nombre de éste; mientras que mediante la tercera, especificamos que deseamos construir un programa ejecutable a partir de nuestro fichero fuente de ejemplo.

Ahora, para generar los ficheros de construcción nativos (digamos para Ninja en Microsoft Windows), debemos ejecutar la siguiente secuencia de comandos:

C:\Examples\Tutorial> mkdir build

C:\Examples\Tutorial> cd build

C:\Examples\Tutorial\build> cmake -G Ninja ..

Finalmente, podremos construir nuestro proyecto haciendo una llamada a Ninja:

C:\Examples\Tutorial\build> ninja

Paso 1b: …

TODO

Lectura: «Mastering CMake» ―Ken Martin & Bill Hoffman

Chapter 1: ¿Por qué CMake?

TODO

1.1 Historia de CMake

El desarrollo de CMake comenzó en 1999 como parte del Insight Toolkit (ITK, www.itk.org) financiado por el US National Library of Medicine.

TODO

1.2 ¿Por qué no usar Autoconf?

TODO

1.3 ¿Por qué no usar JAM, qmake, SCons, y/o Ant?

TODO

1.4 ¿Por qué no hacer un script por sí mismos?

TODO

1.5 ¿En qué plataformas funciona CMake?

TODO