Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MKDEP(1)		FreeBSD	General	Commands Manual		      MKDEP(1)

NAME
     mkdep -- construct	Makefile dependency list

SYNOPSIS
     mkdep [-aDdiopqv] [-f file] [-P prefix] [-s suffixes] -- [flags] file ...

DESCRIPTION
     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 de-
	     fault ``.depend''.

     -i	     When -d or	-D is used, instead of inlining	the contents of	the
	     files to the resulting depend file, use include statements	to in-
	     clude the source dependency files.

     -o	     Add an additional .OPTIONAL line for each dependent file.

     -P	     Prepend the string	given in prefix	to every target	filename.
	     This is useful for	programs that have source files	in multiple
	     subdirectories and	a single Makefile that references all of them
	     explicitly	(without using the VPATH functionality because there
	     can be files with the same	name in	each subdirectory).

     -p	     Cause mkdep to produce dependencies of the	form:

		   program: program.c

	     so	that subsequent	makes will produce program directly from its C
	     module rather than	using an intermediate .o module.  This is use-
	     ful 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.

     -v	     print debugging output.

FILES
     .depend  File containing list of dependencies.

SEE ALSO
     cc(1), cpp(1), make(1)

HISTORY
     The mkdep command appeared	in 4.3BSD-Tahoe.

BUGS
     Some characters special to	make(1), most notably the comment character,
     are not escaped correctly if they appear in file names.  This can lead to
     unparseable output	or silently cause dependencies to be lost.

FreeBSD	13.0			 March 4, 2013			  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | FILES | SEE ALSO | HISTORY | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=mkdep&sektion=1&manpath=NetBSD+9.1>

home | help