Makefile
Assignment Operators
Lazy Set
VARIABLE = value
VARIABLEis recursively expanded whenever it is used
Immediate Set
VARIABLE:= value
VARIABLEis expanded once at declaration
Lazy Set if Absent
VARIABLE?= value
- Setting of a variable only if it doesn’t ahve a value
- value is always evaluated as follows:
ifeq($(origin VARIABLE), undefined)
VARIABLE = value
endif
Append
VARIABLE += value
- Appending the supplied value to theexisting value (or setting to that value if the variable didn’t exist)