From 99379a07f1bca46493e37bba932139cfc01b0071 Mon Sep 17 00:00:00 2001 From: Michal Berger Date: Wed, 31 Mar 2021 11:25:00 +0200 Subject: [PATCH] autobuild: Ignore warnings comming from doxygen 1.8.20 This particular version reports plenty of false positives causing the test to fail. Example: nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ctrlr_alloc_io_qpair()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ctrlr_get_ns()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ns_cmd_read()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ns_cmd_readv()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ns_cmd_read_with_md()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ns_cmd_write()\ilinebr' not found nvme.md:2: warning: @copybrief or @copydoc target 'spdk_nvme_ns_cmd_writev()\ilinebr' not found This is potentially a regression in caused by the following issue: https://github.com/doxygen/doxygen/issues/7948 The above seems to be resolved in latest releases, however, until they are shipped as part of distros we support, similar mitigation is in order. Signed-off-by: Michal Berger Change-Id: I1e39c94f9f388de99e1106bcf15750e4b39384e6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7160 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Tomasz Zawadzki Community-CI: Mellanox Build Bot Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7948 Reviewed-by: Karol Latecki --- autobuild.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/autobuild.sh b/autobuild.sh index 2a0d8563b6..686543f109 100755 --- a/autobuild.sh +++ b/autobuild.sh @@ -12,6 +12,7 @@ rootdir=$(readlink -f $(dirname $0)) source "$1" source "$rootdir/test/common/autotest_common.sh" +source "$rootdir/scripts/common.sh" out=$output_dir if [ -n "$SPDK_TEST_NATIVE_DPDK" ]; then @@ -235,11 +236,15 @@ function test_make_uninstall() { } function build_doc() { + local doxygenv + doxygenv=$(doxygen --version) + $MAKE -C "$rootdir"/doc --no-print-directory $MAKEFLAGS &> "$out"/doxygen.log if [ -s "$out"/doxygen.log ]; then cat "$out"/doxygen.log echo "Doxygen errors found!" - exit 1 + eq "$doxygenv" 1.8.20 || exit 1 + echo "Doxygen $doxygenv detected, all warnings are potentially false positives, continuing the test" fi if hash pdflatex 2> /dev/null; then $MAKE -C "$rootdir"/doc/output/latex --no-print-directory $MAKEFLAGS &>> "$out"/doxygen.log @@ -251,7 +256,8 @@ function build_doc() { fi $MAKE -C "$rootdir"/doc --no-print-directory $MAKEFLAGS clean &>> "$out"/doxygen.log if [ -s "$out"/doxygen.log ]; then - rm "$out"/doxygen.log + # Save the log as an artifact in case we are working with potentially broken version + eq "$doxygenv" 1.8.20 || rm "$out"/doxygen.log fi rm -rf "$rootdir"/doc/output }