075196bcc83e3b1bbed44dc37a2d814672749d26
[profile/ivi/rygel.git] / doc / reference / doc-build.am
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.
6
7 if ENABLE_VALADOC
8
9 VALADOC_FLAGS = --force \
10                 --vapidir $(top_srcdir)/src/lib$(RYGEL_DOCBUILD_MODULE) \
11                 $(RYGEL_DOCBUILD_VALADOC_FLAGS) \
12                 --target-glib=2.32 \
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.0 \
18                 $(VALA_SOURCE_FILES_WITH_PATHS)
19
20
21 valadoc-gen: $(VALA_SOURCE_FILES_WITH_PATHS)
22         $(AM_V_GEN)$(VALADOC) \
23                 -o valadoc \
24                 $(VALADOC_FLAGS)
25
26 # Avoid regeneration of the html if none of its dependencies have changed:
27 gtkdoc/html/index.html: gtkdoc-gen
28
29 RYGEL_GTKDOC_DOCS_XML = $(top_srcdir)/doc/reference/lib$(RYGEL_DOCBUILD_MODULE)/gtkdoc/lib$(RYGEL_DOCBUILD_MODULE)-docs.xml
30
31 gtkdoc-gen: $(VALA_SOURCE_FILES_WITH_PATHS) $(RYGEL_GTKDOC_DOCS_XML)
32         @rm -rf gtkdoc/html
33         $(AM_V_GEN)$(VALADOC) \
34                 -X $(top_srcdir)/src/lib$(RYGEL_DOCBUILD_MODULE)/$(RYGEL_DOCBUILD_MODULE).h \
35                 $(RYGEL_DOCBUILD_EXTRA_GTKDOC_OPTIONS) \
36                 -X -l -X $(top_builddir)/src/lib$(RYGEL_DOCBUILD_MODULE)/.libs/lib$(RYGEL_DOCBUILD_MODULE)-2.0.so \
37                 -o gtkdoc \
38                 --doclet gtkdoc \
39                 $(VALADOC_FLAGS)
40                 
41 clean-local:
42         rm -rf valadoc gtkdoc/html
43         rm -f gtkdoc/html.stamp
44         rm -f gtkdoc/sgml.stamp
45         rm -rf gtkdoc/ccomments
46         rm -rf gtkdoc/xml
47         rm -rf gtkdoc/cscan
48         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).args
49         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).interfaces
50         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).hierarchy
51         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).signals
52         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).types
53         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE)*.txt
54         rm -f gtkdoc/lib$(RYGEL_DOCBUILD_MODULE).prerequisites
55
56 RYGEL_GTKDOC_INSTALL_DIR = $(DESTDIR)$(datadir)/gtk-doc/html/lib$(RYGEL_DOCBUILD_MODULE)
57
58 uninstall-hook:
59         rm -rf $(INSTALL_DIR)
60
61 all: valadoc-gen gtkdoc-gen
62
63 endif
64
65 # The chmod corrects the directory permissions so that distcheck can remove the installed files.
66 install-data-hook: gtkdoc/html/index.html
67         $(MKDIR_P) $(RYGEL_GTKDOC_INSTALL_DIR)
68         cp -d -R $(srcdir)/gtkdoc/html $(RYGEL_GTKDOC_INSTALL_DIR)
69         chmod -R u+w $(RYGEL_GTKDOC_INSTALL_DIR)
70
71
72 EXTRA_DIST = $(RYGEL_GTKDOC_DOCS_XML) gtkdoc/html valadoc
73