Good morning. Your makefile is incorrect. Make does not search implicit rules for phony targets.
regards, Dmitry On Thu, Feb 13, 2020 at 2:31 PM <christ...@fischerpaulsen.dk> wrote: > > Hi > > I have the following makefile > -- > PHON1 := rr1 rr2 > PHON2 := rr1-sim > > .PHONY: all $(PHON1) > # remove below line to get rr1-sim done > .PHONY: $(PHON2) > > all: $(PHON1) $(PHON2) > @echo all done > > %-sim: % > @echo doing $@ > > $(PHON1): > @echo doing $@ > -- > The command 'make' gives the output > doing rr1 > doing rr2 > all done > Thus rr1-sim is not done. > The command 'make rr1-sim' gives the output > make: Nothing to be done for 'rr1-sim'. > Removing the phony declaration of rr1-sim makes things work as I expect. > 'make' gives the output > doing rr1 > doing rr2 > doing rr1-sim > all done > > Is this a bug or is there anything wrong in the Makefile? > > Regards > Christian Paulsen > >