Targets, Prerequisites, and CommandsThe MakefileRulesThe Command ScriptPattern RulesSuffix RulesBuilt-In RulesImplicit Rule ChainsDouble-Colon RulesCommentsVariablesAssignment OperatorsVariables and WhitespaceTarget-Specific Variable AssignmentsThe Automatic VariablesOther Built-In VariablesEnvironment VariablesPhony TargetsOther Target AttributesMacrosFunctionsBuilt-In FunctionsUser-Defined FunctionsDirectivesConditionalsIncludesOther DirectivesRunning makeGenerating Header DependenciesRecursive make CommandsCommand-Line OptionsSpecial Targets Used as Runtime OptionsGCC Options for Generating Makefile Rules