1 # Other Makefile.am files should set:
2 # VALA_SOURCE_FILES, VALA_SOURCE_FILES_WITH_PATHS,
3 # RYGEL_DOCBUILD_VALADOC_FLAGS, RYGEL_DOCBUILD_MODULE
4 # and RYGEL_DOCBUILD_EXTRA_GTKDOC_OPTIONS
5 # and the include this .am file.
9 VALADOC_FLAGS = --force \
10 --vapidir $(top_srcdir)/src/lib$(RYGEL_DOCBUILD_MODULE) \
11 $(RYGEL_DOCBUILD_VALADOC_FLAGS) \
13 --vapidir=$(rygeldir) \
14 --pkg rygel-build-config \
15 -b $(top_srcdir)/src/lib$(RYGEL_DOCBUILD_MODULE) \
16 --package-name lib$(RYGEL_DOCBUILD_MODULE) \
17 --package-version 2.2 \
18 $(VALA_SOURCE_FILES_WITH_PATHS)
21 valadoc-gen: $(VALA_SOURCE_FILES_WITH_PATHS)
22 $(AM_V_GEN)$(VALADOC) \
26 # Avoid regeneration of the html if none of its dependencies have changed:
27 gtkdoc/html/index.html: gtkdoc-gen
29 # The use of extra .xml DocBook files, just for the gtk-doc output
30 # (in RYGEL_GTKDOC_DOCS_XML_EXTRA),
31 # will be unnecessary when valadoc has some way to add extra pages of
32 # documentation. See https://bugzilla.gnome.org/show_bug.cgi?id=680798
33 # The whole gtk-doc build might then get much simpler like it once was:
34 # http://git.gnome.org/browse/rygel/commit/doc/reference/Makefile.am?id=80b68029d42fec3fbbb9c0dbdda99c065bddcb0f
35 RYGEL_GTKDOC_DOCS_XML = \
36 $(top_srcdir)/doc/reference/lib$(RYGEL_DOCBUILD_MODULE)/gtkdoc/lib$(RYGEL_DOCBUILD_MODULE)-docs.xml \
37 $(top_srcdir)/doc/reference/lib$(RYGEL_DOCBUILD_MODULE)/gtkdoc/overview.xml $(RYGEL_GTKDOC_DOCS_XML_EXTRA)
39 gtkdoc-gen: $(VALA_SOURCE_FILES_WITH_PATHS) $(RYGEL_GTKDOC_DOCS_XML)
41 $(AM_V_GEN)$(VALADOC) \
42 -X $(top_srcdir)/src/lib$(RYGEL_DOCBUILD_MODULE)/$(RYGEL_DOCBUILD_MODULE).h \
43 $(RYGEL_DOCBUILD_EXTRA_GTKDOC_OPTIONS) \
44 -X -l -X $(top_builddir)/src/lib$(RYGEL_DOCBUILD_MODULE)/.libs/lib$(RYGEL_DOCBUILD_MODULE)-2.2.so \
50 rm -rf valadoc gtkdoc/html
51 rm -f gtkdoc/html.stamp
52 rm -f gtkdoc/sgml.stamp
53 rm -rf gtkdoc/ccomments
56 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).args
57 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).interfaces
58 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).hierarchy
59 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).signals
60 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).types
61 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE)*.txt
62 rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).prerequisites
64 all: valadoc-gen gtkdoc-gen
66 # The chmod corrects the directory permissions so that distcheck can remove the installed files.
67 install-data-hook: gtkdoc/html/index.html
68 $(MKDIR_P) $(RYGEL_GTKDOC_INSTALL_DIR)
69 cp -d -R $(srcdir)/gtkdoc/html/* $(RYGEL_GTKDOC_INSTALL_DIR)
70 chmod -R u+w $(RYGEL_GTKDOC_INSTALL_DIR)
74 test -d $(srcdir)/gtkdoc/html && $(MKDIR_P) $(RYGEL_GTKDOC_INSTALL_DIR); true
75 test -d $(srcdir)/gtkdoc/html && cp -d -R $(srcdir)/gtkdoc/html/* $(RYGEL_GTKDOC_INSTALL_DIR); true
76 test -d $(srcdir)/gtkdoc/html && chmod -R u+w $(RYGEL_GTKDOC_INSTALL_DIR); true
80 RYGEL_GTKDOC_INSTALL_DIR = $(DESTDIR)$(datadir)/gtk-doc/html/lib$(RYGEL_DOCBUILD_MODULE)
83 rm -rf $(RYGEL_GTKDOC_INSTALL_DIR)
85 EXTRA_DIST = $(RYGEL_GTKDOC_DOCS_XML) gtkdoc/html valadoc