1
# $Id: Makefile.in 21386 2010-06-27 18:03:38Z bangerth $
4
# Copyright (c) the deal.II authors 2003
6
###############################
10
include $D/common/Make.global_options
17
perl -pi -e 's/(EXTRACT_PRIVATE\s*=\s*)NO/$$1YES/;s/(INTERNAL_DOCS\s*=\s*)NO/$$1YES/;' options.dox
20
# Generate documentation. write the output to a file so as not to hide the
21
# important message to impatient observers that this process can take quite
24
# We have to fix up one case after doxygen runs: doxygen versions
25
# 1.6.2 and 1.6.3 (and only these versions) create output files for
26
# @page commands that contain underscores where the underscore is
27
# escaped by a second underscore (e.g. "step__1.html" instead of
28
# "step_1.html"). While all internal links from the doxygen output are
29
# correct, the links we have from the handwritten html files won't
30
# work any more this way. The simplest way to avoid this is to simply
31
# copy all such files to their alternative (traditional) name so that
32
# the external links still work (they will link to a different but
34
deal.II deal.tag: tutorial \
36
$D/base/include/*/*.h \
37
$D/lac/include/*/*.h \
38
$D/deal.II/include/*/*.h \
40
$(addprefix tutorial/doxygen/, $(shell ls tutorial/doxygen/))
41
@echo "=== Generating reference documentation. " \
42
"This can take several minutes..."
43
cat @DOXYGEN_OPTIONS@ deal.dox | @DOXYGEN@ - > doxygen.log
44
@if test -f deal.II/step__1.html ; then \
45
for i in deal.II/*__*html ; do \
46
j="`echo $$i | sed s/__/_/g`" ; \
54
@cd tutorial ; $(MAKE)
56
deal.dox: Makefile $(shell echo images ../../examples/*/doc ../news/*.h)
58
@echo "INPUT=`echo headers ../../{base,lac,deal.II}/include/* tutorial/doxygen ../news/*.h`" > $@
59
@echo "IMAGE_PATH=`echo images ../../examples/*/doc`" >> $@
63
# validate cross references. there are so many html files in these
64
# directories that we can just call
65
# $(PERL) $D/common/scripts/validate-xrefs.pl deal.II/*.html
66
# as this leads to error messages of the kind "/usr/bin/perl: Argument
67
# list too long". Instead, use a loop over all html files
69
@echo "--- Validating xrefs in doxygen/deal.II/ ---"
71
for i in *.html ; do \
72
$(PERL) $D/common/scripts/validate-xrefs.pl $$i ; \
75
# we have so many files that we can't just do "rm deal.II/*" because that
76
# leads to overlong command lines. gotta split it up
78
-for i in deal.II/* ; do rm $$i ; done
80
@cd tutorial ; $(MAKE) clean
83
.PHONY: html tutorial private deal.II \
84
validate-xrefs clean tutorial