• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
2SUBDIRS = manuals
3
4EXTRA_DIST = api/libabigail.doxy website/libabigail-website.doxy
5
6html-doc: $(DO_HTML)
7website: website-html-doxygen
8
9if ENABLE_APIDOC
10install-html-doc: $(DO_INSTALL_HTML)
11endif
12
13DO_HTML = apidoc-html-doxygen website-html-doxygen
14DO_INSTALL_HTML = apidoc-install-html-doxygen
15
16#doxygen
17DOXY_API_SRC_CFG 	=	${abs_srcdir}/api/libabigail.doxy
18DOXY_API_BLD_DIR 	=	${abs_builddir}/api
19DOXY_API_BLD_CFG 	=	${abs_builddir}/api/html.doxy
20DOXY_WEBSITE_BLD_DIR 	=	${abs_builddir}/website
21DOXY_WEBSITE_SRC_CFG 	=	${abs_srcdir}/website/libabigail-website.doxy
22DOXY_WEBSITE_BLD_CFG 	=	${abs_builddir}/website/libabigail-website.doxy
23
24$(DOXY_API_BLD_DIR):
25	if test ! -d $(DOXY_API_BLD_DIR); then		\
26	  mkdir -p $(DOXY_API_BLD_DIR); 		\
27	fi
28
29$(DOXY_WEBSITE_BLD_DIR):
30	if test ! -d $(DOXY_WEBSITE_BLD_DIR); then	\
31	  mkdir -p $(DOXY_WEBSITE_BLD_DIR);		\
32	fi
33
34doxygen-api-cfg: $(DOXY_API_SRC_CFG) $(DOXY_API_BLD_DIR)
35	sed -e "s=LIBABIGAIL_INPUT=${abs_srcdir}/..=g" < $(DOXY_API_SRC_CFG) \
36	> $(DOXY_API_BLD_CFG)
37	sed -i -e "s=LIBABIGAIL_OUTPUT=${abs_builddir}/..=g" $(DOXY_API_BLD_CFG)
38
39doxygen-website-cfg: $(DOXY_WEBSITE_SRC_CFG) $(DOXY_WEBSITE_BLD_DIR)
40	sed -e "s=LIBABIGAIL_INPUT=${abs_srcdir}/..=g" < $(DOXY_WEBSITE_SRC_CFG) \
41	> $(DOXY_WEBSITE_BLD_CFG)
42	sed -i -e "s=LIBABIGAIL_OUTPUT=${abs_builddir}/..=g" $(DOXY_WEBSITE_BLD_CFG)
43
44apidoc-html-doxygen: doxygen-api-cfg
45	doxygen $(DOXY_API_BLD_CFG)
46
47website-html-doxygen: doxygen-website-cfg
48	doxygen $(DOXY_WEBSITE_BLD_CFG)
49
50apidoc-install-html-doxygen: apidoc-html-doxygen
51	test -d "$(DESTDIR)$(docdir)" || $(mkinstalldirs) "$(DESTDIR)$(docdir)"
52	cp -r ${DOXY_API_BLD_DIR} "$(DESTDIR)$(docdir)"
53
54website-install-html-doxygen: doxygen-website-cfg
55	test -z "$(DESTDIR)$(docdir)/website" || $(mkinstalldirs) "$(DESTDIR)$(docdir)/website"
56	cp -r $(DOXY_WEBSITE_BLD_DIR) "$(DESTDIR)$(docdir)/website"
57
58# By adding these files here, automake will remove them for 'make clean'
59CLEANFILES = $(DOXY_API_BLD_CFG) $(DOXY_WEBSITE_BLD_CFG)
60
61# To remove directories.
62clean-local:
63	-rm -rf $(DOXY_API_BLD_DIR)/*/* $(DOXY_WEBSITE_BLD_DIR)/*/*
64
65#To install everything:
66if ENABLE_APIDOC
67
68install-html-doc: install-html
69
70uninstall-local: clean-local
71	-rm -rf $(DESTDIR)$(docdir)
72endif
73