This chapter covers material that might be considered basic GNU
make knowledge but covers it to highlight commonly misunderstood functionality and clarify some confusing parts of GNU
make. It also covers the differences between GNU
make versions 3.79.1, 3.81, 3.82, and 4.0. If you’re working with a version prior to 3.79.1, you should probably upgrade.
This chapter is in no way a replacement for the official GNU
make manual (Free Software Foundation, 2004). I highly recommend owning a copy of it. You can also find the manual at http://www.gnu.org/make/manual.
Any variable set in the environment when GNU
make is started will be available as a GNU
make variable inside the makefile. ...