A hopeless attempt at fixing the plugin docs Makefiles...
[platform/upstream/gstreamer.git] / docs / gst / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2
3 # The name of the module.
4 DOC_MODULE=gstreamer
5
6 # The top-level SGML file.
7 DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
8
9 # The directory containing the source code (if it contains documentation).
10 DOC_SOURCE_DIR=$(top_srcdir)/gst
11
12 EXTRA_DIST = gstreamer.types.in gstreamer.hierarchy $(DOC_MODULE)-sections.txt $(DOC_MAIN_SGML_FILE)
13
14 HTML_DIR=$(datadir)/gstreamer/html
15
16 GST_LIBS += ../../gst/elements/libgstelements.la
17
18
19 TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
20
21 tmpl_sources =                          \
22         tmpl/audioraw.sgml              \
23         tmpl/cothreads.sgml             \
24         tmpl/gst.sgml                   \
25         tmpl/gstinfo.sgml               \
26         tmpl/gstautoplug.sgml           \
27         tmpl/gstscheduler.sgml          \
28         tmpl/gstprops.sgml              \
29         tmpl/gstcaps.sgml               \
30         tmpl/gstaudiosink.sgml          \
31         tmpl/gstaudiosrc.sgml           \
32         tmpl/gstbin.sgml                \
33         tmpl/gstbuffer.sgml             \
34         tmpl/gstbufferpool.sgml         \
35         tmpl/gstdisksrc.sgml            \
36         tmpl/gstelement.sgml            \
37         tmpl/gstfakesink.sgml           \
38         tmpl/gstfakesrc.sgml            \
39         tmpl/gstfdsink.sgml             \
40         tmpl/gstfdsrc.sgml              \
41         tmpl/gsthttpsrc.sgml            \
42         tmpl/gstidentity.sgml           \
43         tmpl/gstlog.sgml                \
44         tmpl/gstmeta.sgml               \
45         tmpl/gstobject.sgml             \
46         tmpl/gstpad.sgml                \
47         tmpl/gstpipeline.sgml           \
48         tmpl/gstplugin.sgml             \
49         tmpl/gstqueue.sgml              \
50         tmpl/gstreamer-unused.sgml      \
51         tmpl/gstsinesrc.sgml            \
52         tmpl/gsttee.sgml                \
53         tmpl/gstthread.sgml             \
54         tmpl/gsttrace.sgml              \
55         tmpl/gsttype.sgml               \
56         tmpl/gstutils.sgml              \
57         tmpl/gstxml.sgml                \
58         tmpl/spectrum.sgml              \
59         tmpl/videoraw.sgml
60
61 gstreamer_docdir = $(HTML_DIR)
62 gstreamer_doc_DATA =            \
63         gstreamer.html          \
64         gstreamer.types         \
65         gstreamer.hierarchy     \
66         gstreamer-sections.txt
67
68 SCANOBJS_FILES =                \
69         $(DOC_MODULE).signals   \
70         $(DOC_MODULE).hierarchy \
71         $(DOC_MODULE).args
72
73 if HAVE_GTK_DOC
74 gstreamer.html: html/book1.html
75         -cd $(srcdir) && cp html/book1.html gstreamer.html
76 else
77 gstreamer.html:
78 endif
79
80 html/book1.html: sgml/gstreamer-doc.bottom
81         $(MAKE) html
82
83 sgml/gstreamer-doc.bottom: $(tmpl_sources)
84         $(MAKE) sgml
85
86 gstreamer-decl.txt:
87         gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers=""
88
89 scanobj: $(srcdir)/$(DOC_MODULE).types
90         rm gstreamer-scan.o; ln -s gstreamer-scan.lo gstreamer-scan.o
91         env CC="$(LIBTOOL) $(CC)" CFLAGS="$(LIBGST_CFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) -I../../" LDFLAGS="$(GST_LIBS)"\
92         gtkdoc-scanobj --module=$(DOC_MODULE) 
93         gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
94
95 tmpl: scanobj gstreamer-decl.txt
96         gtkdoc-mktmpl --module=$(DOC_MODULE)
97
98 sgml: tmpl
99         gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
100
101 html: sgml
102         if ! test -d html ; then mkdir html ; fi
103         -cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
104
105 clean-local:
106         rm -f *~ *.bak *.signals *-unused.txt *.args
107
108 maintainer-clean-local: clean
109         rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt 
110
111 install-data-local: gstreamer.html
112         $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
113         (installfiles=`echo $(srcdir)/html/*.html`; \
114         if test "$$installfiles" = '$(srcdir)/html/*.html'; \
115         then echo '-- Nothing to install' ; \
116         else \
117           for i in $$installfiles; do \
118             echo '-- Installing '$$i ; \
119             $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
120           done; \
121           echo '-- Installing $(srcdir)/html/index.sgml' ; \
122           $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
123           echo '-- Fixing Crossreferences' ; \
124           gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)|| true; \
125         fi)
126
127 dist-hook: gstreamer.html
128         mkdir $(distdir)/html
129         mkdir $(distdir)/sgml
130         mkdir $(distdir)/tmpl
131         -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
132         -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
133         -cp $(srcdir)/sgml/*.sgml $(distdir)/sgml
134         -cp $(srcdir)/sgml/*.bottom $(srcdir)/sgml/*.top $(distdir)/sgml
135
136 .PHONY : html sgml tmpl