Makefile

From Ever changing code
Revision as of 12:18, 1 October 2021 by Pio2pio (talk | contribs) (Created page with "= <code>Makefile</code> adventures = = <code>.PHONY</code> target = By default, Makefile targets are "file targets" - they are used to build files from other files. Make assum...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Makefile adventures

.PHONY target

By default, Makefile targets are "file targets" - they are used to build files from other files. Make assumes its target is a file. These special targets are called phony and you can explicitly tell Make they're not associated with files. We don't need to use .PHONY as long as you don't have a file with the same name as the task. The task will always be executed anyway, and the Makefile will be more readable.

echo "echo \"This is clean file\""         > clean
echo "echo \"This is clean_runfile file\"" > clean_runfile

cat > Makefile <<EOF
.PHONY: clean
clean:
        cat ./clean
clean_runfile:
        cat ./clean_runfile
EOF