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?