Tenho o seguinte exemplo:
LIST_JOB = job1 job2 job3
define macro
$(info "JOB: $(1)")
job_$(1): job.f90
ifort -c job.f90
$(shell touch job.f90)
endef
all: rule
rule: $(foreach job,$(LIST_JOB), job_$(job))
$(foreach job,$(LIST_JOB), \
$(eval $(call macro,$(job))) \
)
que imprime as $(info "JOB: $(1)")
linhas primeiro e depois os comandos de compilação:
"JOB: job1"
"JOB: job2"
"JOB: job3"
ifort -c job.f90
ifort -c job.f90
ifort -c job.f90
Existe alguma maneira de imprimir as linhas de cabeçalho logo antes da compilação (claro, mantendo o loop macro
e o foreach
loop)? Isso significaria a seguinte ordem:
"JOB: job1"
ifort -c job.f90
"JOB: job2"
ifort -c job.f90
"JOB: job3"
ifort -c job.f90