diff --git a/dist/tools/doccheck/check.sh b/dist/tools/doccheck/check.sh index b709cd7fcaaf958e0184f3a2f1bd08213b685db5..f5fa0e27ef8b1a3468f2e2ea3242cb3d3ea9a0aa 100755 --- a/dist/tools/doccheck/check.sh +++ b/dist/tools/doccheck/check.sh @@ -20,15 +20,20 @@ else CRESET= fi -ERRORS=$(make -C "${RIOTBASE}" doc 2>&1 | \ - grep '.*warning' | \ - sed "s#${PWD}/\([^:]*\)#\1#g") +DOXY_OUTPUT=$(make -C "${RIOTBASE}" doc 2>&1) +DOXY_ERRCODE=$? -if [ -n "${ERRORS}" ] -then - echo -e "${CERROR}ERROR: Doxygen generates the following warnings:${CRESET}" - echo "${ERRORS}" +if [ "${DOXY_ERRCODE}" -ne 0 ] ; then + echo "'make doc' exited with non-zero code (${DOXY_ERRCODE})" + echo "${DOXY_OUTPUT}" exit 2 +else + ERRORS=$(echo "${DOXY_OUTPUT}" | grep '.*warning' | sed "s#${PWD}/\([^:]*\)#\1#g") + if [ -n "${ERRORS}" ] ; then + echo -e "${CERROR}ERROR: Doxygen generates the following warnings:${CRESET}" + echo "${ERRORS}" + exit 2 + fi fi exclude_filter() {