Lanzamiento del sistema de construcción GNU Make 4.4

Después de casi tres años de desarrollo, se lanzó la versión 4.4 del sistema de construcción GNU Make. Además de la corrección de errores, en la nueva versión se pueden destacar los siguientes cambios:

  • Se han desaprobado las plataformas OS/2 (EMX), AmigaOS, Xenix y Cray, cuyo soporte se descontinuará en la próxima versión.
  • Se han incrementado los requisitos para el entorno de construcción; ahora se necesita un compilador que soporte elementos del estándar C99 para compilar GNU Gnulib.
  • Se ha añadido un objetivo de construcción especial .WAIT, que permite suspender el inicio de la construcción de ciertos objetivos hasta que se complete la construcción de otros objetivos.
  • En el objetivo de construcción especial .NOTPARALLEL se ha implementado la capacidad de especificar prerrequisitos (archivos necesarios para la construcción del objetivo) para ejecutar secuencialmente los objetivos relacionados (como si se hubiera colocado un .WAIT entre cada prerrequisito).
  • Se ha añadido un objetivo de construcción especial .NOTINTERMEDIATE, el cual desactiva el comportamiento relacionado con el uso de objetivos intermedios (.INTERMEDIATE) para los archivos especificados, archivos que coincidan con una máscara o todo el makefile.
  • Se ha implementado la función $(let …), que permite definir variables locales en funciones de usuario.
  • Se ha implementado la función $(intcmp …) para comparar números.
  • Al usar la opción «-l» (—load-average) al determinar el número de trabajos a ejecutar, ahora se consideran los datos del archivo /proc/loadavg sobre la carga del sistema.
  • Se ha añadido la opción «—shuffle» para mezclar los prerrequisitos, lo que permite lograr un comportamiento no determinista en la construcción paralela (por ejemplo, para pruebas de fuzzing que validan correctamente los prerrequisitos en el makefile).
  • En sistemas con soporte para mkfifo se ha proporcionado un nuevo método de interacción con el jobserver durante la ejecución paralela de trabajos, basado en el uso de canales con nombre. Para revertir al antiguo método basado en canales sin nombre, se ha propuesto la opción «—jobserver-style=pipe».
  • Se ha ampliado el uso de archivos temporales durante la operación (pueden surgir problemas al especificar un directorio alternativo para archivos temporales (TMPDIR) y al eliminar el contenido de TMPDIR durante la construcción).

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