run phony makefile

phony - makefile windows



¿Puede un Makefile ejecutar código SOLAMENTE cuando se produce un error? (1)

La marca recursiva es tu amiga aquí, me temo.

.PHONY: all all: ${MAKE} files || ${MAKE} network

Si los make files logrados make files éxito, su trabajo está hecho y el código de salida es exitoso. En caso de falla, el código de salida es el de make network .

En mi Makefile, tengo un código que comprueba la conectividad de la red. Este código toma una cantidad decente de tiempo para ejecutarse y solo me gustaría ejecutarlo si otro objetivo no se puede construir.

Makefile actual

all: files network # compile files files: # get files from network resources network: # check for network connectivity # echo and return an error if it''s not available

Orden de ejecución:

if not network: # exit with error if not files: # exit with error if not all: # exit with error

Makefile deseado

En el ejemplo anterior, me gustaría que el objetivo de la network sea ​​"creado", solo si el objetivo de los files no se "hace".

Orden de ejecución:

if not files: if not network: # exit with error if not all: # exit with error