125 lines
2.6 KiB
HTML
125 lines
2.6 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>make(1)</TITLE>
|
|
</HEAD>
|
|
<BODY>
|
|
<H1>make(1)</H1>
|
|
<HR>
|
|
<PRE>
|
|
|
|
</PRE>
|
|
<H2>NAME</H2><PRE>
|
|
make - a program for maintaining large programs
|
|
|
|
|
|
</PRE>
|
|
<H2>SYNOPSIS</H2><PRE>
|
|
<STRONG>make</STRONG> [<STRONG>-f</STRONG> <EM>file</EM>] [<STRONG>-iknpqrst</STRONG>] [<EM>option</EM>] ... [<EM>target</EM>]
|
|
|
|
|
|
</PRE>
|
|
<H2>OPTIONS</H2><PRE>
|
|
|
|
<STRONG>-f</STRONG> Use <EM>file</EM> as the makefile
|
|
|
|
<STRONG>-i</STRONG> Ignore status returned by commands
|
|
|
|
<STRONG>-k</STRONG> On error, skip to next command
|
|
|
|
<STRONG>-n</STRONG> Report, but do not execute
|
|
|
|
<STRONG>-p</STRONG> Print macros and targets
|
|
|
|
<STRONG>-q</STRONG> Question up-to-dateness of target
|
|
|
|
<STRONG>-r</STRONG> Rule inhibit; do not use default rules
|
|
|
|
<STRONG>-s</STRONG> Silent mode
|
|
|
|
<STRONG>-t</STRONG> Touch files instead of making them
|
|
|
|
|
|
</PRE>
|
|
<H2>EXAMPLES</H2><PRE>
|
|
|
|
<STRONG>make</STRONG> <STRONG>kernel</STRONG> # Make <EM>kernel</EM> up to date
|
|
|
|
<STRONG>make</STRONG> <STRONG>-n</STRONG> <STRONG>-f</STRONG> <STRONG>mfile</STRONG> # Tell what needs to be done
|
|
|
|
|
|
</PRE>
|
|
<H2>DESCRIPTION</H2><PRE>
|
|
|
|
<EM>Make</EM> is a program that is normally used for developing large programs
|
|
consisting of multiple files. It keeps track of which object files
|
|
depend on which source and header files. When called, it does the
|
|
minimum amount of recompilation to bring the target file up to date.
|
|
|
|
The file dependencies are expected in <EM>makefile</EM> or <EM>Makefile</EM> , unless
|
|
another file is specified with <STRONG>-f</STRONG>. <EM>Make</EM> has some default rules built in,
|
|
for example, it knows how to make .<EM>s</EM> files from .<EM>c</EM> files. Here is a
|
|
sample <EM>makefile</EM> .
|
|
|
|
d=/user/ast # <EM>d</EM> is a macro
|
|
program: head.s tail.s # <EM>program</EM> depends on these
|
|
cc -o program head.s tail.s # tells how to make <EM>program</EM>
|
|
echo Program done. # announce completion
|
|
head.s: $d/def.h head.c # <EM>head</EM>.<EM>s</EM> depends on these
|
|
tail.s: $d/var.h tail.c # <EM>tail</EM>.<EM>s</EM> depends on these
|
|
|
|
A complete description of <EM>make</EM> would require too much space here. Many
|
|
books on UNIX discuss <EM>make</EM> . Study the numerous <EM>Makefiles</EM> in the MINIX
|
|
source tree for examples.
|
|
|
|
|
|
</PRE>
|
|
<H2>SEE ALSO</H2><PRE>
|
|
<STRONG><A HREF="../man1/cc.1.html">cc(1)</A></STRONG>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
</BODY>
|
|
</HTML>
|