run phony makefile

phony - makefile windows



Utilice la ruta del directorio del destino en la lista de requisitos previos en Makefile (1)

Supongo que la expansión secundaria es probablemente lo que estás buscando:

.SECONDEXPANSION: %.cmp: %.cfg $$(dir %)default.cfg ./compare.pl $^ $@

También tenga en cuenta la ausencia de barra después de $$(dir %) , la función dir siempre agrega uno al valor resultante.

Escribí un script que toma dos archivos que terminan en .cfg y da salida a un archivo que termina en .cmp. Quiero incluir esto en mi Makefile porque algunos archivos de código fuente dependen de este archivo .cmp.

En mi Makefile, quiero hacer esto:

%.cmp: %.cfg $(dir %)/default.cfg ./compare.pl $^ $@

Hay dos dependencias para generar el archivo .cmp. Primero es un archivo .cfg con el mismo nombre, y el segundo es un archivo .cfg que siempre se llama predeterminado. Ambos archivos .cfg y el archivo de salida .cmp estarán en el mismo directorio.

¿Hay alguna manera de agarrar la ruta del directorio del objetivo y usarlo con los prereqs?