Go to the first, previous, next, last section, table of contents.
In any directory you should be able to make the following:
- `boot':
- does the one-off preparation required to get ready
for the real work. Notably, it does `gmake depend' in all directories
that contain programs. But `boot' does more. For example, you can't
do `gmake depend' in a directory of C program until you have converted
the literate `.lh' header files into standard `.h' header files.
Similarly, you convert a literate file to illiterate form until you
have built the `literate' tools. `boot' takes care of these
inter-directory dependencies.
You should say `gmake boot' right after configuring your build tree,
but note that this is a one-off, i.e., there's no need to re-do
`gmake boot' if you should re-configure your build tree at a later
stage (no harm caused if you do though).
- `all':
- makes all the final target(s) for this Makefile.
Depending on which directory you are in a "final target"
may be an executable program, a library archive, a shell script,
or a Postscript file.
Typing `gmake' alone is generally the same as typing `gmake all'.
- `install':
- installs the things built by `all'. Where does it
install them? That is specified by `mk/config.mk.in'; you can
override it in `mk/build.mk'.
- `uninstall':
- reverses the effect of `install'.
- `clean':
- remove all easily-rebuilt files.
- `veryclean':
- remove all files that can be rebuilt at all.
There's a danger here that you may remove a file that needs a more
obscure
utility to rebuild it (especially if you started from a source
distribution).
- `check':
- run the test suite.
All of these standard targets
automatically recurse into sub-directories.
Certain other standard targets do not:
- `configure':
- is only available in the root directory `$(FPTOOLS)';
it has been discussed in Section See section Getting the build you want.
- `depend':
- make a `.depend' file in each directory that needs
it. This `.depend' file contains mechanically-generated dependency
information; for example, suppose a directory contains a Haskell
source module `Foo.lhs' which imports another module `Baz'.
Then the generated `.depend' file will contain the dependency:
Foo.o : Baz.hi
which says that the object file `Foo.o' depends on the interface
file `Baz.hi' generated by compiling module `Baz'.
The `.depend' file is automatically included by every Makefile.
- `binary-dist':
- make a binary distribution.
- `dist':
- make a source distribution.
Go to the first, previous, next, last section, table of contents.