1*63eb84d1Schristos## generate API documentation with doxygen
2*63eb84d1Schristosapidox-am-yes:
3*63eb84d1Schristos	@if test "$(subdir)" != "."; then \
4*63eb84d1Schristos		$(mkinstalldirs) $(top_builddir)/apidocs/$(subdir) ;\
5*63eb84d1Schristos		if test ! -x $(top_builddir)/apidocs/common; then \
6*63eb84d1Schristos			if test -d $(top_srcdir)/doc/common; then \
7*63eb84d1Schristos			   common_dir=`cd $(top_srcdir)/doc/common && pwd` ;\
8*63eb84d1Schristos			else \
9*63eb84d1Schristos	   		   common_dir=$(kde_libs_htmldir)/en/common ;\
10*63eb84d1Schristos			fi ;\
11*63eb84d1Schristos			$(LN_S) $$common_dir $(top_builddir)/apidocs/common; \
12*63eb84d1Schristos		fi ;\
13*63eb84d1Schristos		cp $(top_srcdir)/admin/Doxyfile.global Doxyfile; \
14*63eb84d1Schristos		echo "PROJECT_NAME           = \"$(subdir) Library\"" >> Doxyfile; \
15*63eb84d1Schristos		echo "PROJECT_NUMBER         = \"Version $(VERSION)\"" >> Doxyfile; \
16*63eb84d1Schristos		echo "INPUT                  = $(srcdir)" >> Doxyfile; \
17*63eb84d1Schristos		echo "IMAGE_PATH             = $(top_srcdir)/doc/api" >> Doxyfile ;\
18*63eb84d1Schristos		echo "OUTPUT_DIRECTORY       = $(top_builddir)/apidocs" >> Doxyfile; \
19*63eb84d1Schristos		echo "HTML_OUTPUT            = $(subdir)/html" >> Doxyfile; \
20*63eb84d1Schristos		echo "LATEX_OUTPUT           = $(subdir)/latex" >> Doxyfile; \
21*63eb84d1Schristos		echo "RTF_OUTPUT             = $(subdir)/rtf" >> Doxyfile; \
22*63eb84d1Schristos		echo "MAN_OUTPUT             = $(subdir)/man" >> Doxyfile; \
23*63eb84d1Schristos		echo "GENERATE_HTML          = $(GENERATE_FLAG)" >> Doxyfile ;\
24*63eb84d1Schristos		echo "GENERATE_MAN          = $(GENERATE_FLAG)" >> Doxyfile ;\
25*63eb84d1Schristos		echo "GENERATE_LATEX          = $(GENERATE_FLAG)" >> Doxyfile ;\
26*63eb84d1Schristos		if test -n "$(DOXYGEN_EXCLUDE)"; then \
27*63eb84d1Schristos			echo "EXCLUDE_PATTERNS      += $(DOXYGEN_EXCLUDE)" >> Doxyfile; \
28*63eb84d1Schristos		fi ;\
29*63eb84d1Schristos		echo "TAGFILES = \\" >> Doxyfile; \
30*63eb84d1Schristos		tags='$(DOXYGEN_REFERENCES) qt'; for tag in $$tags; do \
31*63eb84d1Schristos			tagpath= ;\
32*63eb84d1Schristos			path="../../$$tag" ;\
33*63eb84d1Schristos			if test -f $(top_builddir)/apidocs/$$tag/$$tag.tag; then \
34*63eb84d1Schristos				tagpath="$(top_builddir)/apidocs/$$tag/$$tag.tag" ;\
35*63eb84d1Schristos			else \
36*63eb84d1Schristos				tagpath=`ls -1 $(kde_htmldir)/en/*-apidocs/$$tag/$$tag.tag 2> /dev/null` ;\
37*63eb84d1Schristos				if test -n "$$tagpath"; then \
38*63eb84d1Schristos					path=`echo $$tagpath | sed -e "s,.*/\([^/]*-apidocs\)/$$tag/$$tag.tag,../../../\1/$$tag,"` ;\
39*63eb84d1Schristos				fi ;\
40*63eb84d1Schristos			fi ;\
41*63eb84d1Schristos			if test "$$tag" = qt; then \
42*63eb84d1Schristos				echo $$tagpath=$(QTDOCDIR) >> Doxyfile ;\
43*63eb84d1Schristos			else if test -n "$$tagpath"; then \
44*63eb84d1Schristos				echo "$$tagpath=$$path/html \\" >> Doxyfile ;\
45*63eb84d1Schristos			    fi ;\
46*63eb84d1Schristos			fi ;\
47*63eb84d1Schristos		done ;\
48*63eb84d1Schristos		echo "GENERATE_TAGFILE       = $(top_builddir)/apidocs/$(subdir)/$(subdir).tag" >> Doxyfile ;\
49*63eb84d1Schristos		echo "IGNORE_PREFIX          = K" >> Doxyfile ;\
50*63eb84d1Schristos		echo "HAVE_DOT = $(KDE_HAVE_DOT)" >> Doxyfile ;\
51*63eb84d1Schristos		$(DOXYGEN) Doxyfile ;\
52*63eb84d1Schristos	fi
53*63eb84d1Schristos
54*63eb84d1Schristosapidox-am-no:
55*63eb84d1Schristos
56*63eb84d1Schristosinstall-data-local: install-apidox
57*63eb84d1Schristos
58*63eb84d1Schristos## install API documentation
59*63eb84d1Schristosinstall-apidox:
60*63eb84d1Schristos	@if test "$(subdir)" != "."; then \
61*63eb84d1Schristos		$(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html ; \
62*63eb84d1Schristos		if test -f $(top_builddir)/apidocs/$(subdir)/$(subdir).tag; then \
63*63eb84d1Schristos		echo $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
64*63eb84d1Schristos		$(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
65*63eb84d1Schristos		fi; \
66*63eb84d1Schristos		if test -d $(top_builddir)/apidocs/$(subdir)/html; then \
67*63eb84d1Schristos			list=`ls $(top_builddir)/apidocs/$(subdir)/html`; \
68*63eb84d1Schristos			for file in $$list; do \
69*63eb84d1Schristos				echo $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/html/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html; \
70*63eb84d1Schristos					$(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/html/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html; \
71*63eb84d1Schristos		done; \
72*63eb84d1Schristos		fi; \
73*63eb84d1Schristos		rm -f $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/common; \
74*63eb84d1Schristos		$(LN_S) $(kde_libs_htmldir)/en/common $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/common; \
75*63eb84d1Schristos	else\
76*63eb84d1Schristos		if test -d $(top_builddir)/apidocs; then \
77*63eb84d1Schristos		$(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs ;\
78*63eb84d1Schristos		list=`cd $(top_builddir)/apidocs && ls -1`; \
79*63eb84d1Schristos		for file in $$list; do \
80*63eb84d1Schristos			if test -f $(top_builddir)/apidocs/$$file; then \
81*63eb84d1Schristos				echo $(INSTALL_DATA) $(top_builddir)/apidocs/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \
82*63eb84d1Schristos				$(INSTALL_DATA) $(top_builddir)/apidocs/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \
83*63eb84d1Schristos			fi; \
84*63eb84d1Schristos		done ; fi; \
85*63eb84d1Schristos	fi
86*63eb84d1Schristos
87*63eb84d1Schristosuninstall-local: uninstall-apidox
88*63eb84d1Schristos
89*63eb84d1Schristos## uninstall API documentation
90*63eb84d1Schristosuninstall-apidox:
91*63eb84d1Schristos	@if test "$(subdir)" != "."; then \
92*63eb84d1Schristos		if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); then \
93*63eb84d1Schristos			rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
94*63eb84d1Schristos		fi\
95*63eb84d1Schristos	else\
96*63eb84d1Schristos		if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; then \
97*63eb84d1Schristos			rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \
98*63eb84d1Schristos		fi\
99*63eb84d1Schristos	fi
100*63eb84d1Schristos
101*63eb84d1Schristosapidox:
102*63eb84d1Schristos	@if test "$(subdir)" != "."; then \
103*63eb84d1Schristos		$(MAKE) apidox-am-@KDE_HAS_DOXYGEN@ ;\
104*63eb84d1Schristos	else \
105*63eb84d1Schristos		$(MAKE) apidox-am-toplevel-@KDE_HAS_DOXYGEN@ ;\
106*63eb84d1Schristos	fi
107*63eb84d1Schristos	@set fnord $(MAKEFLAGS); amf=$$2; if test -n '$(SUBDIRS)'; then \
108*63eb84d1Schristos	    list='$(SUBDIRS)'; \
109*63eb84d1Schristos	    for subdir in $$list; do \
110*63eb84d1Schristos		if grep '^include .*Doxyfile.am' $(srcdir)/$$subdir/Makefile.am; then \
111*63eb84d1Schristos		echo "Making apidox in $$subdir"; \
112*63eb84d1Schristos		if test "$$subdir" != "."; then \
113*63eb84d1Schristos			(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) GENERATE_FLAG=no apidox) || exit 1; \
114*63eb84d1Schristos		fi ; fi ;\
115*63eb84d1Schristos	    done; \
116*63eb84d1Schristos	    for subdir in $$list; do \
117*63eb84d1Schristos		if grep '^include .*Doxyfile.am' $(srcdir)/$$subdir/Makefile.am; then \
118*63eb84d1Schristos		echo "Making apidox in $$subdir"; \
119*63eb84d1Schristos		if test "$$subdir" != "."; then \
120*63eb84d1Schristos			(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) GENERATE_FLAG=yes apidox) || exit 1; \
121*63eb84d1Schristos		fi ; fi ;\
122*63eb84d1Schristos	    done; \
123*63eb84d1Schristos	fi
124*63eb84d1Schristos
125*63eb84d1Schristosapidox-am-toplevel-no:
126*63eb84d1Schristosapidox-am-toplevel-yes:
127*63eb84d1Schristos	@echo "*** Creating API documentation main page"; \
128*63eb84d1Schristos	cp $(top_srcdir)/admin/Doxyfile.global Doxyfile; \
129*63eb84d1Schristos	echo "PROJECT_NAME           = $(DOXYGEN_PROJECT_NAME)" >> Doxyfile ; \
130*63eb84d1Schristos	echo "PROJECT_NUMBER         = $(DOXYGEN_PROJECT_NUMBER)" >> Doxyfile ; \
131*63eb84d1Schristos	echo "INPUT                  = $(top_srcdir)" >> Doxyfile ; \
132*63eb84d1Schristos	echo "OUTPUT_DIRECTORY       = $(top_builddir)/apidocs" >> Doxyfile ; \
133*63eb84d1Schristos	echo "FILE_PATTERNS          = *.dox" >> Doxyfile ; \
134*63eb84d1Schristos	echo "RECURSIVE              = NO" >> Doxyfile ; \
135*63eb84d1Schristos	echo "SOURCE_BROWSER         = NO" >> Doxyfile ; \
136*63eb84d1Schristos	echo "ALPHABETICAL_INDEX     = NO" >> Doxyfile ; \
137*63eb84d1Schristos	echo "HTML_OUTPUT            = ." >> Doxyfile ; \
138*63eb84d1Schristos	echo "HTML_HEADER            = apidocs/common/mainheader.html" >> Doxyfile ; \
139*63eb84d1Schristos	echo "HTML_FOOTER            = apidocs/common/mainfooter.html" >> Doxyfile ; \
140*63eb84d1Schristos	echo "HTML_STYLESHEET        = apidocs/common/doxygen.css" >> Doxyfile ; \
141*63eb84d1Schristos	echo "GENERATE_LATEX         = NO" >> Doxyfile ; \
142*63eb84d1Schristos	echo "GENERATE_RTF           = NO" >> Doxyfile ; \
143*63eb84d1Schristos	echo "GENERATE_MAN           = NO" >> Doxyfile ; \
144*63eb84d1Schristos	echo "GENERATE_XML           = NO" >> Doxyfile ; \
145*63eb84d1Schristos	echo "GENERATE_AUTOGEN_DEF   = NO" >> Doxyfile ; \
146*63eb84d1Schristos	echo "ENABLE_PREPROCESSING   = NO" >> Doxyfile ; \
147*63eb84d1Schristos	echo "CLASS_DIAGRAMS         = NO" >> Doxyfile ; \
148*63eb84d1Schristos	echo "HAVE_DOT               = NO" >> Doxyfile ; \
149*63eb84d1Schristos	echo "GENERATE_HTML          = YES" >> Doxyfile ;\
150*63eb84d1Schristos	$(mkinstalldirs) $(top_builddir)/apidocs ; \
151*63eb84d1Schristos	rm -f $(top_builddir)/apidocs/common ; \
152*63eb84d1Schristos	if test -d $(top_srcdir)/doc/common; then \
153*63eb84d1Schristos	   common_dir=`cd $(top_srcdir)/doc/common && pwd` ;\
154*63eb84d1Schristos	else \
155*63eb84d1Schristos	   common_dir=$(kde_libs_htmldir)/en/common ;\
156*63eb84d1Schristos	fi ;\
157*63eb84d1Schristos	$(LN_S) $$common_dir $(top_builddir)/apidocs/common ;\
158*63eb84d1Schristos	doxygen Doxyfile; \
159*63eb84d1Schristos	rm -f Doxyfile
160*63eb84d1Schristos
161*63eb84d1Schristos# Local Variables:
162*63eb84d1Schristos# mode: makefile
163*63eb84d1Schristos# End:
164