Home > Help Files > Unix > Make

UNIX: make


       The purpose of the make utility is  to  determine  automatically  which
       pieces of a large program need to be recompiled, and issue the commands
       to recompile them.  The manual  describes  the  GNU  implementation  of
       make,  which  was  written by Richard Stallman and Roland McGrath.  Our
       examples show C programs, since they are most common, but you  can  use
       make  with  any  programming  language whose compiler can be run with a
       shell command.  In fact, make is not limited to programs.  You can  use
       it  to describe any task where some files must be updated automatically
       from others whenever the others change.
 
       To prepare to use make, you must write a file called the makefile  that
       describes the relationships among files in your program, and the states
       the commands for updating each file.  In a program, typically the  exe-
       cutable  file  is  updated from object files, which are in turn made by
       compiling source files.
 
       Once a suitable makefile exists,  each  time  you  change  some  source
       files, this simple shell command:
 
              make
 
       suffices  to  perform  all  necessary recompilations.  The make program
       uses the makefile data base and  the  last-modification  times  of  the
       files  to  decide  which  of the files need to be updated.  For each of
       those files, it issues the commands recorded in the data base.
 
       make executes commands in the makefile to update  one  or  more  target
       names,  where name is typically a program.  If no -f option is present,
       make will look for the makefiles GNUmakefile, makefile,  and  Makefile,
       in that order.
                                                                                
       Normally  you  should  call  your makefile either makefile or Makefile.
       (We recommend Makefile because it appears prominently near  the  begin-
       ning  of  a directory listing, right near other important files such as
       README.)  The first name checked, GNUmakefile, is not  recommended  for
       most  makefiles.   You should use this name if you have a makefile that
       is specific to GNU make, and will not be understood by  other  versions
       of make.  If makefile is `-', the standard input is read.
                                                                                
       make  updates  a  target  if it depends on prerequisite files that have
       been modified since the target was last modified, or if the target does
       not exist.

       For more information, run "man make" at the prompt.
	    

 


Comments to consult@newton.berkeley.edu
© 1998-2008 UC Regents