Comment

Comment by jgrahamc

A far better way to learn about GNU make would be to read the actual manual.

https://www.gnu.org/software/make/manual/

This doesn't seem like a well thought out introduction. There's quite a lot of randomness. For example, the first makefile says:

    This makefile will always run. The default target is some_binary,    
    because it is first.

    some_binary:
	echo "nothing"
Actually, it's not true that that will always echo nothing because some_binary isn't declared as phony and so if some_binary exists on the CWD echo "nothing" will not happen.

Also, the language here is weird. The tutorial talks about makefiles running and targets calling targets.

4.8 states:

    1) We do not use *.o, because that is just the string *.o, 
    which might be useful in the commands, but is only one 
    target and does not expand."
That's not true. Consider the following

    *.foo: ; @echo $@
If there are any files in the CWD that match *.foo then it is expanded and rules created for each file.
parent jgrahamc 11 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton