explicitly added gstreamer-sections.txt to EXTRA_DIST
[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 # thomas
13 # there's something wrong with gstreamer-sections.txt not being in the dist
14 # maybe it doesn't resolve
15 EXTRA_DIST = gstreamer.types.in gstreamer.hierarchy $(DOC_MODULE)-sections.txt $(DOC_MAIN_SGML_FILE) gstreamer-sections.txt
16
17 HTML_DIR=$(datadir)/gstreamer/html
18
19 GST_LIBS += $(top_builddir)/gst/elements/libgstelements.la
20
21
22 TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
23
24 tmpl_sources =                          \
25         tmpl/cothreads.sgml             \
26         tmpl/gst.sgml                   \
27         tmpl/gstinfo.sgml               \
28         tmpl/gstautoplug.sgml           \
29         tmpl/gstscheduler.sgml          \
30         tmpl/gstprops.sgml              \
31         tmpl/gstcaps.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/gstobject.sgml             \
45         tmpl/gstpad.sgml                \
46         tmpl/gstpipeline.sgml           \
47         tmpl/gstplugin.sgml             \
48         tmpl/gstqueue.sgml              \
49         tmpl/gstreamer-unused.sgml      \
50         tmpl/gstsinesrc.sgml            \
51         tmpl/gsttee.sgml                \
52         tmpl/gstthread.sgml             \
53         tmpl/gsttrace.sgml              \
54         tmpl/gsttype.sgml               \
55         tmpl/gstutils.sgml              \
56         tmpl/gstxml.sgml                \
57         tmpl/spectrum.sgml              
58
59 gstreamer_docdir = $(HTML_DIR)
60 gstreamer_doc_DATA =            \
61         gstreamer.types         \
62         gstreamer.hierarchy     \
63         gstreamer-sections.txt
64
65 SCANOBJS_FILES =                \
66         $(DOC_MODULE).signals   \
67         $(DOC_MODULE).hierarchy \
68         $(DOC_MODULE).args
69
70 # FIXME: the dependencies here are rather broken.  Really, html/book1.html
71 # should be rebuilt if any file in $(top_srcdir)/gst is updated.
72 if HAVE_GTK_DOC
73 html/book1.html: 
74         $(MAKE) html
75 else
76 html/book1.html:
77 endif
78
79 gstreamer-decl.txt:
80         gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers=""
81
82 # The LD env-var below is a nasty hack to make this work on versions of
83 # gtkdoc-scanobj which don't understand libtool
84 scanobj: $(srcdir)/$(DOC_MODULE).types
85         cd ../../gst/;$(MAKE) libgst.la
86         cd ../../gst/elements/;$(MAKE) libgstelements.la
87         rm gstreamer-scan.o; ln -s gstreamer-scan.lo gstreamer-scan.o
88         env CC="$(LIBTOOL) $(CC)" LD="cp gstreamer-scan.lo gstreamer-scan.o;$(LIBTOOL) $(CC)" CFLAGS="$(LIBGST_CFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) -I../../" LDFLAGS="$(GST_LIBS)"\
89         gtkdoc-scanobj --module=$(DOC_MODULE) 
90         gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
91
92 tmpl: scanobj gstreamer-decl.txt
93         gtkdoc-mktmpl --module=$(DOC_MODULE)
94
95 sgml: tmpl
96         gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
97
98 html: sgml
99         if ! test -d html ; then mkdir html ; fi
100         -cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
101
102 clean-local:
103         rm -rf *~ *.bak *.signals *-unused.txt *.args *.o *.lo .libs sgml html
104
105 distclean-local: clean
106         rm -rf $(DOC_MODULE)-decl-list.txt
107
108 install-data-local: html/book1.html
109         $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
110         (installfiles=`echo $(srcdir)/html/*.html`; \
111         if test "$$installfiles" = '$(srcdir)/html/*.html'; \
112         then echo '-- Nothing to install' ; \
113         else \
114           for i in $$installfiles; do \
115             echo '-- Installing '$$i ; \
116             $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
117           done; \
118           echo '-- Installing $(srcdir)/html/index.sgml' ; \
119           $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
120           echo '-- Fixing Crossreferences' ; \
121           gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)|| true; \
122         fi)
123
124 dist-hook: html/book1.html
125         if ! test -d $(distdir)/tmpl ; then mkdir $(distdir)/tmpl ; fi
126         -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
127
128 .PHONY : html sgml tmpl