Hey all 👋 To my mind, whenever a target is marked as PHONY it is supposed to simply ignore files with the same name. And that should be the behaviour of PHONY pattern rules too.
With that said, I need some help understanding what happens in the following scenario please. ————————————————————————————————————————————————————————————————— #################################################### # shell #################################################### $ ls * Makefile mk: echo.mk #################################################### # ./Makefile #################################################### include mk/echo.mk #################################################### # ./mk/echo.mk #################################################### .PHONY : a-target a-target.% : @echo 'a-target invoked with "$(*)"' ### .PHONY : echo.% echo.% : a-target.invoked-by-echo @echo 'echo invoked with "$(*)"' #################################################### # shell #################################################### $ make echo.hello-there a-target invoked with "invoked-by-echo" echo invoked with "mk/mk" echo invoked with "hello-there" ————————————————————————————————————————————————————————————————— I wasn't expecting PHONY `echo.%' to be invoked for `echo.mk' which is a file. Am I missing something obvious in my snippet? Have I misunderstood the concept of PHONY? -- Bahman Join the chatter on Matrix: 🗣️ https://matrix.to/#/#.mk:matrix.org Subscribe to the Lemmy community: 🐭 https://lemmy.ml/c/makefile