Files
acrn-hypervisor/doc/.known-issues
David B. Kinder 0e317d56bf doc: clean up PDF generation for ACRN docs
PRs #5945 and #5949 introduced fixes to the doc building process to
support PDF generation of the documentation set.  This PR refines the
doc build process, cleaning up the Makefile, adding display of tool
version information, and updates the doc building documentation to
include additional dependencies needed for building the PDF and
instructions for how to build the PDF.  The latexpdf make target is
provided to just run the latex and PDF producing process that depends on
the HTML artifacts from a make html run.  A new make pdf target is
provided that combines the two steps into one.

A new know-issues pattern file is added that verifies the expected
output from the latexpdf process is returned, as it can't be completely
eliminated without losing potential error messages that need to be
resolved.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2021-04-26 19:50:44 -07:00
..
2018-05-15 17:19:35 +08:00

This directory contains configuration files to ignore errors found in
the build and test process which are known to the developers and for
now can be safely ignored.

To use:

 $ cd <build directory>
 $ make SOMETHING >& result
 $ scripts/filter-known-issues.py result

It is included in the source tree so if anyone has to submit anything
that triggers some kind of error that is a false positive, it can
include the "ignore me" file, properly documented.

Each file can contain one or more multiline Python regular expressions
(https://docs.python.org/2/library/re.html#regular-expression-syntax)
that match an error message. Multiple regular expressions are
separated by comment blocks (that start with #). Note that an empty
line still is considered part of the multiline regular expression.

For example

---beginning---
#
# This testcase always fails, pending fix ZEP-1234
#
.*/tests/kernel/grumpy .* FAIL
#
# Documentation issue, masks:
#
# /home/e/inaky/z/kernel.git/doc/api/io_interfaces.rst:28: WARNING: Invalid definition: Expected identifier in nested name. [error at 19]
#  struct dev_config::@65  dev_config::bits
#  -------------------^
#
^(?P<filename>.+/doc/api/io_interfaces.rst):(?P<lineno>[0-9]+): WARNING: Invalid definition: Expected identifier in nested name. \[error at [0-9]+]
^\s+struct dev_config::@[0-9]+  dev_config::bits.*
^\s+-+\^
---end---

Note you want to:

- use relateive paths; instead of
  /home/me/mydir/zephyr/something/somewhere.c you will want
  ^.*/something/somewhere.c (as they will depend on where it is being
  built)

- Replace line numbers with [0-9]+, as they will change

- (?P<filename>[-._/\w]+/something/somewhere.c) saves the match on
  that file path in a "variable" called 'filename' that later you can
  match with (?P=filename) if you want to match multiple lines of the
  same error message.

Can get really twisted and interesting in terms of regexps; they are
powerful, so start small :)