Skip to content

Commit

Permalink
docs/libcurl: check that all options with man pages are referenced
Browse files Browse the repository at this point in the history
If a man page exists in the opts/ directory, it must also be referenced
either in curl_easy_setopt.3 or curl_multi_setopt.3
  • Loading branch information
dfandrich committed Mar 18, 2015
1 parent d260a0a commit 431c526
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 2 deletions.
5 changes: 4 additions & 1 deletion Makefile.am
Expand Up @@ -153,7 +153,7 @@ html:
pdf:
cd docs; make pdf

check: test examples
check: test examples check-docs

if CROSSCOMPILING
test-full: test
Expand Down Expand Up @@ -181,6 +181,9 @@ endif
examples:
@(cd docs/examples; $(MAKE) check)

check-docs:
@(cd docs/libcurl; $(MAKE) check)

# This is a hook to have 'make clean' also clean up the docs and the tests
# dir. The extra check for the Makefiles being present is necessary because
# 'make distcheck' will make clean first in these directories _before_ it runs
Expand Down
16 changes: 15 additions & 1 deletion docs/libcurl/Makefile.am
Expand Up @@ -85,7 +85,7 @@ PDFPAGES = curl_easy_cleanup.pdf curl_easy_getinfo.pdf \
m4macrodir = $(datadir)/aclocal
dist_m4macro_DATA = libcurl.m4

CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
CLEANFILES = $(HTMLPAGES) $(PDFPAGES) $(TESTS)

EXTRA_DIST = $(man_MANS) $(HTMLPAGES) index.html $(PDFPAGES) ABI \
symbols-in-versions symbols.pl mksymbolsmanpage.pl
Expand All @@ -111,3 +111,17 @@ pdf: $(PDFPAGES)
ps2pdf $$foo.ps $@; \
rm $$foo.ps; \
echo "converted $< to $@")

# Make sure each option man page is referenced in the main man page
TESTS = check-easy check-multi
LOG_COMPILER = $(PERL)
# The test fails if the log file contains any text
AM_LOG_FLAGS = -p -e 'die "$$_" if ($$_);'

check-easy: $(srcdir)/curl_easy_setopt.3 $(srcdir)/opts/CURLOPT*.3
OPTS="$$(ls $(srcdir)/opts/CURLOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_easy_setopt.3 >/dev/null || echo Missing $$opt; done > $@

check-multi: $(srcdir)/curl_multi_setopt.3 $(srcdir)/opts/CURLMOPT*.3
OPTS="$$(ls $(srcdir)/opts/CURLMOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_multi_setopt.3 >/dev/null || echo Missing $$opt; done > $@

0 comments on commit 431c526

Please sign in to comment.