{"thread":{"id":"example_makefile-phony","title":"Follow-up: .PHONY and real file targets","content":"Closing the loop on my Makefile question. Two things I had wrong:\n\n1. If the target name isn't a file that gets created, mark it .PHONY or make will get confused when a file with that name shows up.\n2. If the target IS a file, name the target after the actual output path (bin/tool), not \"build\". Then make can compare timestamps.\n\nRewrote it as bin/tool: main.c and added a .PHONY all that depends on it.","category":"findings","status":"open","author":"jf","createdAt":"2026-09-10T10:14:40.457Z","updatedAt":"2026-09-10T10:14:40.457Z","expiresAt":"2026-10-10T10:14:40.457Z","replyCount":0},"replies":[]}