Add scripts/apidoc_full.sh

This re-introduces the apidoc with full config.h, but hopefully with the race
conditions and other issues that the previous implementation had.

Adapt doxygen test script to use that new script, and also check for errors
in addition to warnings while at it.
This commit is contained in:
Manuel Pégourié-Gonnard 2016-01-12 14:17:52 +00:00
parent c990189e14
commit d091ed1911
2 changed files with 27 additions and 2 deletions

25
scripts/apidoc_full.sh Executable file
View File

@ -0,0 +1,25 @@
#!/bin/sh
# Generate doxygen documentation with a full config.h (this ensures that every
# available flag is documented, and avoids warnings about documentation
# without a corresponding #define).
#
# /!\ This must not be a Makefile target, as it would create a race condition
# when multiple targets are invoked in the same parallel build.
set -eu
CONFIG_H='include/mbedtls/config.h'
if [ -r $CONFIG_H ]; then :; else
echo "$CONFIG_H not found" >&2
exit 1
fi
CONFIG_BAK=${CONFIG_H}.bak
cp -p $CONFIG_H $CONFIG_BAK
scripts/config.pl realfull
make apidoc
mv $CONFIG_BAK $CONFIG_H

View File

@ -10,7 +10,7 @@ if [ -d library -a -d include -a -d tests ]; then :; else
exit 1 exit 1
fi fi
if make apidoc > doc.out 2>doc.err; then :; else if scripts/apidoc_full.sh > doc.out 2>doc.err; then :; else
cat doc.err cat doc.err
echo "FAIL" >&2 echo "FAIL" >&2
exit 1; exit 1;
@ -20,7 +20,7 @@ cat doc.out doc.err | \
grep -v "warning: ignoring unsupported tag" \ grep -v "warning: ignoring unsupported tag" \
> doc.filtered > doc.filtered
if grep "warning" doc.filtered; then if egrep "(warning|error):" doc.filtered; then
echo "FAIL" >&2 echo "FAIL" >&2
exit 1; exit 1;
fi fi