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.36.3			  2012-02-07			  MAKEPPLOG(1)

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

home | help