summaryrefslogtreecommitdiff
path: root/odk/CustomTarget_doxygen.mk
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-04-27 20:15:24 +0200
committerMichael Stahl <mstahl@redhat.com>2013-06-04 12:00:57 +0200
commit361642c0946fbe75cb1d4b477496a62d0469a19e (patch)
treedd4347263af9f73371aba7fe74c3a3ef78bb4be1 /odk/CustomTarget_doxygen.mk
parent3d9c1b35accacfb797174d31467c1704c305f073 (diff)
odk: generate IDL docs with doxygen
Change-Id: Ibf7ab46bdd08a42ecf475500d35f92b67d4d8036
Diffstat (limited to 'odk/CustomTarget_doxygen.mk')
-rw-r--r--odk/CustomTarget_doxygen.mk32
1 files changed, 32 insertions, 0 deletions
diff --git a/odk/CustomTarget_doxygen.mk b/odk/CustomTarget_doxygen.mk
index b093648ce967..bf92167d8b96 100644
--- a/odk/CustomTarget_doxygen.mk
+++ b/odk/CustomTarget_doxygen.mk
@@ -54,4 +54,36 @@ $(call gb_CustomTarget_get_workdir,odk/docs)/cpp/doxygen.log : \
$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),GEN,1)
$(DOXYGEN) $< > $@
+$(eval $(call gb_CustomTarget_register_targets,odk/docs,\
+ idl/Doxyfile \
+ idl/doxygen.log \
+))
+
+odk_idl_PREFIX := $(SRCDIR)/udkapi/ $(SRCDIR)/offapi/
+odk_idl_DOXY_INPUT := $(SRCDIR)/odk/pack/gendocu/idl/main.dox \
+ $(addsuffix com,$(odk_idl_PREFIX)) \
+odk_idl_DOXY_WORKDIR := $(call gb_CustomTarget_get_workdir,odk/docs/idl)/ref
+
+# don't depend on the IDL files directly but instead on the udkapi/offapi
+# which will get rebuilt when any IDL file changes
+$(call gb_CustomTarget_get_workdir,odk/docs)/idl/Doxyfile : \
+ $(SRCDIR)/odk/pack/gendocu/idl/Doxyfile \
+ $(call gb_UnoApi_get_target,udkapi) \
+ $(call gb_UnoApi_get_target,offapi) \
+ $(gb_Module_CURRENTMAKEFILE)
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),SED,1)
+ sed -e 's!^INPUT = %$$!INPUT = $(call odk_cygwin_path,$(odk_idl_DOXY_INPUT))!' \
+ -e 's!^OUTPUT_DIRECTORY = %$$!OUTPUT_DIRECTORY = $(call odk_cygwin_path,$(odk_idl_DOXY_WORKDIR))!' \
+ -e 's!^PROJECT_BRIEF = %$$!PROJECT_BRIEF = "$(PRODUCTNAME) $(PRODUCTVERSION) SDK API Reference"!' \
+ -e 's!^PROJECT_NAME = %$$!PROJECT_NAME = $(PRODUCTNAME)!' \
+ -e 's!^QUIET = %$$!QUIET = $(if $(VERBOSE),NO,YES)!' \
+ -e 's!^STRIP_FROM_PATH = %$$!STRIP_FROM_PATH = $(call odk_cygwin_path,$(odk_idl_PREFIX))!' \
+ $< > $@
+
+$(call gb_CustomTarget_get_workdir,odk/docs)/idl/doxygen.log : \
+ $(call gb_CustomTarget_get_workdir,odk/docs)/idl/Doxyfile \
+ $(SRCDIR)/odk/pack/gendocu/idl/main.dox
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),GEN,1)
+ $(DOXYGEN) $< > $@
+
# vim: set noet sw=4 ts=4: