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

FreeBSD Manual Pages

  
 
  

home | help
MAKEPPLOG(1)			    Makepp			  MAKEPPLOG(1)

NAME
       makepplog -- Textual analysis of	the build log

DESCRIPTION
       ?: -?,  A: -A,
	 --args-file,
	 --arguments-file,  C: -C,
	 -c,
	 --current-working-directory,
	 --current-working-directory-and-up,  F: -f,
	 --follow,  H: -h,
	 --help,  I: -i,
	 --installation-directories,
	 --install-dirs,  K: -K,
	 -k,
	 --keylist,
	 --keys,  L: -l,
	 --log,
	 --log-file,  M: $MAKEPPLOGFLAGS,  N: -n,
	 --no-indent,  O: -o,
	 --output,  P: -p,
	 --prefix,  S: --showkey,  T: -t,
	 --tabulate,  U: -u,
	 --uniq,
	 --unique,  V: -V,
	 --version

       makepplog option	...

       mppl option ...

       Makepp by default writes	a detailed log of its decision finding and
       actions.	 So as to not waste its	time with pretty printing, this	data
       is dumped in a compact but fairly cryptic format.  This tool does the
       pretty printing in various formats.  For	a less detailed	but even
       prettier	graphical view see makeppgraph.

       This is solely based on the contents of the log file, so	it can be
       performed at any	time, and even on a different machine.	Valid options
       are:

       -A filename
       --args-file=filename
       --arguments-file=filename
	   Read	the file and parse it as possibly quoted whitespace- and/or
	   newline-separated options.

       -c
       --current-working-directory
       -C number
       --current-working-directory-and-up=number
	   The first two options strip the current directory from the front of
	   all filenames it outputs.  The second two additionally replace
	   number directories up from here, with the necessary number of ../
	   entries.

	   These options only work meaningfully	when you call makepplog	in the
	   same	directory makepp ran, or one near there.

       -f
       --follow
	   As in "tail"	command, process more lines of logfile as it grows.

       -?
       -h
       --help
	   Print out a brief summary of	the options.

       -i
       --install-dirs
       --installation-directories
	   These options replace the invocation	of makepp and the pathes to
	   the built in	makefiles with .../ so as to keep odd pathes out of
	   your	sight.

       -k list
       --keys=list
       --keylist=list
	   The list specifies one or more space	separated Shell	style patterns
	   (with [xyz],	?, *, {a,bc,def}).  Remember to	protect	these from
	   your	Shell by quoting.  These are matched against the message keys
	   (as shown by	"--showkey").  Each pattern may	be preceded with an
	   exclamation mark ("!") or a caret ("^") to exclude the matched keys
	   from	those selected before instead of adding	them to	the selection.
	   If the first	pattern	starts with an exclamation mark, it operates
	   on all keys.	 There are a few key prefixes with fixed meanings so
	   you can select categories of	keys:

	   BC* All build cache related messages.

	   BUILD*
	       All build reason	related	messages.

	   LOAD*
	       All makefile loading related messages.

	   REP*
	       All repository related messages.

	   RULE*
	       All rule	related	messages.

	   SCAN*
	       All scanning related messages.

	       --keys='LOAD* RULE*'	   # Only makefile loading and rule messages.
	       --keys='!BUILD* *CMD'	   # No	build messages,	except BUILD_CMD.

       -K
       --showkey
	   This	prefixes each output line with the internal name of the
	   message key,	for use	with "--keys".

       -l filename
       --log=filename
       --log-file=filename
	   The filename	is to where makepp wrote its log.  It may also be a
	   directory, in which a file called .makepp/log or log	will be
	   searched.  To read from stdin, you must give	- as a filename.  When
	   this	option is not given, it	defaults to the	current	directory.

	   This	option can be given multiple times, e.g. for merging all the
	   logs	from "--traditional-recursive-make".  But it will get the
	   message version information,	which keeps track of message formats,
	   only	from the first file.  So if you	feed it	log files from
	   different version of	makepp in the same invocation, output can get
	   a bit messed	up.

       -n
       --no-indent
	   Makepp puts indentation information into the	log file to show you
	   what	happened because of what else.	This option turns indentation
	   off.

       -o filename
       --output=filename
	   Write the output to this file, rather than stdout.

       -p
       --prefix
	   Prefix every	structured message with	the string "makepplog: ".
	   IDEs	like Emacs can then parse the lines and	hyperlink to the
	   mentioned files.

       -t
       --tabulate
	   Put each list item on a new line, rather than outputting a line
	   that	can easily become longer than a	screenful.

       -u
       --uniq
       --unique
	   Report each found include statement and each	scan output only once.

       -V
       --version
	   Print out the version number.

EXAMPLES
       If you want to know which file includes which other file, and nothing
       else:

	   makeppclean -r
	   makepp		       # Full build to scan all	source files.
	   makepplog -p	'/^INCL$/'

       If you want to format lines with	a prefix so Emacs' compilation-mode
       can parse the lines and exclude all scanning related messages:

	   makepplog -mp '!/^SCAN/'

       If you want to explore which keys you can exclude or include in the
       above manners:

	   makepplog -kn

ENVIRONMENT
       Makepplog looks at the following	environment variable:

       $MAKEPPLOGFLAGS
	   Any flags in	this environment variable are interpreted as command
	   line	options	before any explicit options.  Quotes are interpreted
	   like	in makefiles.

AUTHOR
       Daniel Pfeiffer (occitan@esperanto.org)

perl v5.32.0			  2012-02-07			  MAKEPPLOG(1)

NAME | DESCRIPTION | EXAMPLES | ENVIRONMENT | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=makepplog&sektion=1&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help