gmodule: New variable. (dist-hook): Handle $(BUILT_EXTRA_DIST).
[platform/upstream/glib.git] / docs / reference / gobject / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2
3 # The name of the module.
4 DOC_MODULE=gobject
5
6 # The top-level SGML file.
7 DOC_MAIN_SGML_FILE=gobject-docs.sgml
8
9 # The directory containing the source code (if it contains documentation).
10 DOC_SOURCE_DIR=../../../gobject
11
12 # Extra options to supply to gtkdoc-fixref
13 FIXXREF_OPTIONS=--extra-dir=$(srcdir)/../glib/html
14
15 # Headers to ignore
16 IGNORE_HFILES=
17
18 tmpl_sources =                          \
19         tmpl/enumerations_flags.sgml    \
20         tmpl/generic_values.sgml        \
21         tmpl/gobject-unused.sgml        \
22         tmpl/objects.sgml               \
23         tmpl/param_specs.sgml           \
24         tmpl/standard_params.sgml       \
25         tmpl/types.sgml                 \
26         tmpl/value_collection.sgml      \
27         tmpl/value_types.sgml
28
29 ####################################
30 # Everything below here is generic #
31 ####################################
32
33 TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
34
35 EXTRA_DIST =                            \
36         $(DOC_MAIN_SGML_FILE)           \
37         $(DOC_MODULE)-decl.txt          \
38         $(DOC_MODULE)-sections.txt      \
39         $(DOC_MODULE)-overrides.txt
40
41 if ENABLE_GTK_DOC
42 all-local: html/index.html
43
44 $(DOC_MODULE)-decl.txt: 
45         $(MAKE) scan
46
47 $(tmpl_sources): $(DOC_MODULE)-decl.txt $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
48         $(MAKE) templates
49
50 sgml/$(DOC_MODULE)-doc.bottom: $(tmpl_sources) $(DOC_MODULE)-decl.txt
51         $(MAKE) sgml
52
53 html/index.html: sgml/$(DOC_MODULE)-doc.bottom $(DOC_MAIN_SGML_FILE)
54         $(MAKE) html
55 endif
56
57 scan:
58         -(cd $(srcdir) \
59         && gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)")
60
61 templates: 
62         cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
63
64 sgml:
65         cd $(srcdir) \
66         && gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
67
68 html:
69         test -d $(srcdir)/html || mkdir $(srcdir)/html
70         -cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
71         @echo '-- Fixing Crossreferences' 
72         gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
73
74 clean-local:
75         rm -f *~ *.bak *.signals *-unused.txt
76
77 maintainer-clean-local: clean
78         cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
79
80 install-data-local:
81         $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
82         (installfiles=`echo $(srcdir)/html/*.html`; \
83         if test "$$installfiles" = '$(srcdir)/html/*.html'; \
84         then echo '-- Nothing to install' ; \
85         else \
86           for i in $$installfiles; do \
87             echo '-- Installing '$$i ; \
88             $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
89           done; \
90           echo '-- Installing $(srcdir)/html/index.sgml' ; \
91           $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
92         fi)
93
94 #
95 # Require gtk-doc when making dist
96 #
97 if ENABLE_GTK_DOC
98 dist-check-gtkdoc:
99 else
100 dist-check-gtkdoc:
101         @echo "*** gtk-doc must be installed and enabled in order to make dist"
102         @false
103 endif
104
105 dist-hook: dist-check-gtkdoc
106         mkdir $(distdir)/tmpl
107         mkdir $(distdir)/sgml
108         mkdir $(distdir)/html
109         -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
110         -cp $(srcdir)/sgml/*.sgml $(distdir)/sgml
111         -cp $(srcdir)/sgml/*.bottom $(srcdir)/sgml/*.top $(distdir)/sgml
112         -cp $(srcdir)/html/index.sgml $(distdir)/html
113         -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
114
115 .PHONY : html sgml templates scan