DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(make.info.gz) Rule Introduction

Info Catalog (make.info.gz) Introduction (make.info.gz) Introduction (make.info.gz) Simple Makefile
 
 2.1 What a Rule Looks Like
 ==========================
 
 A simple makefile consists of "rules" with the following shape:
 
      TARGET ... : PREREQUISITES ...
              COMMAND
              ...
              ...
 
    A "target" is usually the name of a file that is generated by a
 program; examples of targets are executable or object files.  A target
 can also be the name of an action to carry out, such as `clean' (
 Phony Targets).
 
    A "prerequisite" is a file that is used as input to create the
 target.  A target often depends on several files.
 
    A "command" is an action that `make' carries out.  A rule may have
 more than one command, each on its own line.  *Please note:* you need
 to put a tab character at the beginning of every command line!  This is
 an obscurity that catches the unwary.
 
    Usually a command is in a rule with prerequisites and serves to
 create a target file if any of the prerequisites change.  However, the
 rule that specifies commands for the target need not have
 prerequisites.  For example, the rule containing the delete command
 associated with the target `clean' does not have prerequisites.
 
    A "rule", then, explains how and when to remake certain files which
 are the targets of the particular rule.  `make' carries out the
 commands on the prerequisites to create or update the target.  A rule
 can also explain how and when to carry out an action.   Writing
 Rules Rules.
 
    A makefile may contain other text besides rules, but a simple
 makefile need only contain rules.  Rules may look somewhat more
 complicated than shown in this template, but all fit the pattern more
 or less.
 
Info Catalog (make.info.gz) Introduction (make.info.gz) Introduction (make.info.gz) Simple Makefile
automatically generated byinfo2html