Provided by: makepp_2.0.98.3-1_all bug

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, cryptic format.  This tool does the pretty
       printing and filtering in various formats.  For a less detailed but prettier graphical view see
       makeppgraph.

       This is solely based on the contents of the log file (.makepp/log), so it can be performed at any time as
       long as you preserve the file, and even on a different machine.  Every time makepp stops when running
       with option "--loop", you get a page break.  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  later  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.18.1                                       2013-01-20                                       MAKEPPLOG(1)