aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Miller <alex.miller@gmx.de>2016-04-14 01:16:55 +0200
committerMichael Kerrisk <mtk.manpages@gmail.com>2016-04-18 13:46:42 +0100
commit851124df284c4a8b87f5b3147712d7bbf2ec1fa6 (patch)
tree7ecf7f6cf5daa12df1c9f7ec58d153223c46e397
parent23509e5201c47eecfc4979970f7f75b0f810b164 (diff)
downloadman-pages-851124df284c4a8b87f5b3147712d7bbf2ec1fa6.tar.gz
Makefile: Improve recipe for "check-groff-warnings" target
* Fix race condition (don't remove and re-create $GROFF_LOG repeatedly), * check for failure to create $GROFF_LOG, * use $TMPDIR if set instead of hardcoded "/tmp", * quote variables, * use clobbering redirection (just in case), * don't create unnecessary subshells, * add a semicolon for consistency. Signed-off-by: Alexander Miller <alex.miller@gmx.de> Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
-rw-r--r--Makefile14
1 files changed, 7 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 1003843ce4..4b9619f3e4 100644
--- a/Makefile
+++ b/Makefile
@@ -64,15 +64,15 @@ install:
# Check if groff reports warnings (may be words of sentences not displayed)
# from http://lintian.debian.org/tags/manpage-has-errors-from-man.html
check-groff-warnings:
- GROFF_LOG=$$(mktemp /tmp/manpages-checksXXXX); \
+ GROFF_LOG="$$(mktemp --tmpdir manpages-checksXXXX)" || exit $$?; \
for i in man?/*.[1-9]; \
do \
- if grep -q 'SH.*NAME' $$i; then \
- LC_ALL=en_US.UTF-8 MANWIDTH=80 man --warnings -E UTF-8 -l $$i > /dev/null 2>$$GROFF_LOG; \
- [ -s $$GROFF_LOG ] && ( echo "$$i: " ; cat $$GROFF_LOG ; echo "" ); \
- rm $$GROFF_LOG 2>/dev/null; \
- fi \
- done
+ if grep -q 'SH.*NAME' "$$i"; then \
+ LC_ALL=en_US.UTF-8 MANWIDTH=80 man --warnings -E UTF-8 -l "$$i" > /dev/null 2>| "$$GROFF_LOG"; \
+ [ -s "$$GROFF_LOG" ] && { echo "$$i: "; cat "$$GROFF_LOG"; echo; }; \
+ fi; \
+ done; \
+ rm -f "$$GROFF_LOG"
# someone might also want to look at /var/catman/cat2 or so ...
# a problem is that the location of cat pages varies a lot