autobuild: skip doxygen 1.9.5 false positives

Doxygen 1.9.5 contains false positives that will be fixed
in later version. Right now if that version of doxygen is used
in tests (e.g. Fedora 37), any error (from issues below) is ignored.

False possitive is related to:
https://github.com/doxygen/doxygen/issues/9552
https://github.com/doxygen/doxygen/issues/9678

This patch ignores only warnings related to "\ifile" and
"@param" processing in doxygen, reporting any other warnings.

Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Change-Id: I1ff5005351b82e81c323ad0fae47ba53a765b8a0
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15847
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Michal Berger <michal.berger@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
Kamil Godzwon 2022-12-09 04:32:36 -05:00 committed by Tomasz Zawadzki
parent da846dd402
commit 4e8a0de05b

View File

@ -318,17 +318,27 @@ function build_doc() {
$MAKE -C "$rootdir"/doc --no-print-directory $MAKEFLAGS &> "$out"/doxygen.log
if [ -s "$out"/doxygen.log ]; then
if [[ "$doxygenv" != "1.8.20" ]]; then
if [[ "$doxygenv" == "1.8.20" ]]; then
# Doxygen 1.8.20 produces false positives, see:
# https://github.com/doxygen/doxygen/issues/7948
if grep -vE '\\ilinebr' "$out"/doxygen.log; then
echo "Doxygen errors found!"
exit 1
fi
elif [[ "$doxygenv" == "1.9.5" ]]; then
# Doxygen 1.9.5 produces false positives, see:
# https://github.com/doxygen/doxygen/issues/9552 and
# https://github.com/doxygen/doxygen/issues/9678
if grep -vE '\\ifile|@param' "$out"/doxygen.log; then
echo "Doxygen errors found!"
exit 1
fi
else
cat "$out"/doxygen.log
echo "Doxygen errors found!"
exit 1
fi
# Doxygen 1.8.20 produces false positives, see:
# https://github.com/doxygen/doxygen/issues/7948
if grep -v "\ilinebr" "$out"/doxygen.log; then
echo "Doxygen errors found!"
exit 1
fi
echo "Doxygen $doxygenv detected. No warnings except false positives, continuing the test"
fi
if hash pdflatex 2> /dev/null; then