mkdep takes a set of flags for the C compiler and a list of C source files as arguments and constructs a set of include file dependencies which are written into the file ``.depend''. An example of its use in a Makefile might be:
CFLAGS= -O -I../include
SRCS= file1.c file2.c
depend:
mkdep -- ${CFLAGS} ${SRCS}
where the macro SRCS is the list of C source files and the macro CFLAGS is the list of flags for the C compiler.
The options are as follows:
-a
Append to the output file, so that multiple mkdep's may be run from a single Makefile.
-D
Post process (as -d) but read the list of filenames from stdin.
-d
Post process and merge previously created (for example by “cc -MD x.c”) depend files into a single file.
-f
Write the include file dependencies to file, instead of the default ``.depend''.
-o
Add an additional .OPTIONAL line for each dependant file.
-p
Cause
mkdep to produce dependencies of the form:
so that subsequent makes will produce
program directly from its C module rather than using an intermediate
.o module. This is useful for programs whose source is contained in a single module.
-p is equivalent to specifying a null suffix with
-s.
-q
Do not print a warning for inaccessible files when -d is given.
-s
Expand each target filename to a list, replacing the ‘.o' suffix with each element of suffixes. The list of suffixes may be space or comma separated.