Var assignment foo = "bar" bar = $(foo) foo # dynamic (renewing) assignment foo := "boo" # one time assignment, $(bar) now is "boo foo" foo ?= /usr/local # safe assignment, $(foo) and $(bar) still the same bar += world # append, "boo foo world" foo != echo fooo # exec shell command and assign to foo # $(bar) now is "fooo foo world" = expressions are only evaluated when they’re being used. Magic va
![Makefile cheatsheet](https://cdn-ak-scissors.b.st-hatena.com/image/square/ea0da9dada05b82588f091ef4b224ae062aa61da/height=288;version=1;width=512/https%3A%2F%2Fassets.devhints.io%2Fpreviews%2Fmakefile.jpg%3Ft%3D20231011104103)