He estado buscando durante una hora, y esta información parece ser la nada ...GNU make: La extracción de argumento para -j dentro Makefile
me gustaría ser capaz de extraer (y, posiblemente, su uso) el número de "puestos de trabajo" solicitados, pasados a través de la opción -j, o de "Hacerse él mismo" en el caso de las sub-marcas, en el archivo MAKE.
Lo más prometedor que he visto hasta ahora es la variable $ (MAKEFLAGS), pero en mi sistema (si hago, por ejemplo, hago -j2) el contenido de esta variable es solo "--jobserver-fds = 3,4 -j ". ¿Hay alguna manera de obtener la cantidad real de trabajos aprobados con -j?
¿Por qué quieres hacer eso? Esto va tan en contra del espíritu de la marca, estoy bastante seguro de que hay una mejor manera de lograr lo que quieres hacer. –
Puede hacer que el número de trabajos sea un parámetro variable en su Makefile de nivel superior, que invocaría internamente 'make -j'. – aaz
@static_rtti, esperaba aprender un poco más sobre la ejecución real de make (en particular cuando se invoca con $ (MAKE)). Por ejemplo, ¿todas las sub-marcas tienen un valor de job_slots de 1 o pueden las sub-marcas pasar algún subconjunto de las N tareas disponibles en el nivel superior? Leer la fuente como sugirió Raphael es probablemente la forma de determinar esto, pero pensé que experimentar con make podría ser más simple. –