Skip to content
Snippets Groups Projects
doxygen 3.2 KiB
Newer Older
  • Learn to ignore specific revisions
  • # -*-makefile-automake-*-
    
    if BUILD_DOCS
      DOXYGENTAG = doxygen-tag 
      DOXYGEN_HTML = html 
      # EXTRAINSTALL in the html subdirectory
      DOXYGENHTMLFILES = *.html *.css *.png *.gif
    
      DOXYGENDISTFILES = doxygen-tag
    
      DOXYGENINSTALL = $(DOXYGENHTMLFILES) ../doxygen.log ../doxyerr.log
    
    endif
    
    DISTCLEANFILES = doxygen.log doxygen-tag
    
    
    if DUNEWEB
    
      DUNEWEBDOXY = @DUNEWEBDIR@/doc/doxygen
    
      # themeing doxygen
      DOXYGENHEADER = doxy-header.html
      DOXYGENFOOTER = doxy-footer.html
      DOXYGENSTYLESHEET = dune-doxy.css
    
    
    doxy-header.html: BASEDIR=../../..
    doxy-footer.html: BASEDIR=../../..
    doxy-header.html: WMLOPTS=
    doxy-footer.html: WMLOPTS=
    
    doxy-header.html: @DUNEWEBDIR@/doc/doxygen/doxy-header.wml
    	$(WMLCMD) -I @DUNEWEBDIR@/doc/doxygen/ @DUNEWEBDIR@/doc/doxygen/doxy-header.wml -o $(abs_builddir)/doxy-header.html
    
    doxy-footer.html: @DUNEWEBDIR@/doc/doxygen/doxy-footer.wml
    	$(WMLCMD) -I @DUNEWEBDIR@/doc/doxygen/ @DUNEWEBDIR@/doc/doxygen/doxy-footer.wml -o $(abs_builddir)/doxy-footer.html
    
    
    endif
    endif
    
    DOXYGENFILES = $(DOXYGEN_HTML) $(DOXYGENHEADER) $(DOXYGENFOOTER)
    
    #we need this in the distribution
    if BUILD_DOCS
    
    install-doxygen-data: $(DOXYGEN_HTML)
    	$(mkinstalldirs) $(DESTDIR)/$(doxygendir); \
    	dir=$(srcdir); \
    	if test -d ./html; then dir=.; fi; echo "dir=$$dir"; \
    	list='$(DOXYGENHTMLFILES)'; \
    	for p in $$list; do \
    		$(install_sh_DATA) $$dir/html/$$p $(DESTDIR)/$(doxygendir); \
    	done
    
    uninstall-doxygen-data:
    	list='$(DOXYGENHTMLFILES)'; \
    	for p in $$list; do \
    	  rm -f $(DESTDIR)/$(doxygendir)/$$p; \
    	done
    
    install-data-local: install-doxygen-data
    uninstall-local: uninstall-doxygen-data
    
    endif
    
    # what files does the doxygen-generated stuff depend on (find-syntax)
    
    DOXYGEN_DEPENDON = -name \*.cc -o -name \*.hh -o -name \*.png -o -name Doxyfile -o -name modules
    
    
    # check dependency ourself to be robust
    
    doxygen-tag: FORCE Doxyfile $(DOXYGENHEADER) $(DOXYGENFOOTER)
    
    	if test ! -e doxygen-tag || test x"`find $(top_srcdir) \( $(DOXYGEN_DEPENDON) \) -a -cnewer doxygen-tag -print`" != x ; then \
    
    	    echo Running doxygen. This may take a while... ; \
    
    	    $(DOXYGEN) $(srcdir)/Doxyfile > doxygen.log 2>&1 <&- ; \
    
    	    touch doxygen-tag ; \
    
    		if test "$$DOXYQUIET" != "1" && test -f doxyerr.log; then cat doxyerr.log; fi; \
    
    Christian Engwer's avatar
    Christian Engwer committed
    	    test -x "$(DUNEWEBDOXY)/update-doxygen.css" && $(DUNEWEBDOXY)/update-doxygen.css $(abs_builddir)/html; \
    
    	    # Make sure to always return a true exit code (even when the	\
                # previous test failed)						\
    	    true;								\
    
    doxygen-dist-install: doxygen-tag
    	mkdir $(distdir)/html
    	pushd $(srcdir)/html; \
    	for i in $(DOXYGENHTMLFILES); do \
    	  cp $$i $(distdir)/html; done; popd
    
    dist-hook: doxygen-dist-install
    
    
    html: doxygen-tag
    
    if WML
    # how to install the doxygen documentation
    web-install-doxygen:
    	if test -d $(DUNEWEBDIR) && test -r $(DUNEWEBDIR)/Make.global ; then \
    	  pushd html; \
    	    $(MAKE) -f $(DUNEWEBDIR)/Make.global \
    
    Christian Engwer's avatar
    Christian Engwer committed
              EXTRAINSTALL="$(DOXYGENINSTALL)" CURDIR="$(CURDIR)/@DUNE_MOD_NAME@-html" install ; \
    
    web-install: web-install-doxygen web-install-default
    
    
    clean-local: clean-doxygen
    
    clean-doxygen:
    
    	rm -rf $(DOXYGENTAG) $(DOXYGENFILES) *~
    
    
    # nice trick from the GNU make infopage to force a rule to run
    FORCE:
    
    include $(top_srcdir)/am/webstuff