Added building of the manual to the build system. Currently in a rudimentary state...
authorRichard Boulton <richard@tartarus.org>
Mon, 9 Oct 2000 00:34:21 +0000 (00:34 +0000)
committerRichard Boulton <richard@tartarus.org>
Mon, 9 Oct 2000 00:34:21 +0000 (00:34 +0000)
Original commit message from CVS:
Added building of the manual to the build system.  Currently in a
rudimentary state - will not gracefully give up if tools not available,
will not uninstall / clean, and may not install / make dist properly.
Documentation does not have dependencies on images, so won't rebuild if
they're altered either.

configure.in
docs/Makefile.am
docs/manual/.gitignore
docs/manual/Makefile.am [new file with mode: 0644]
docs/manual/images/.gitignore
docs/manual/images/Makefile.am [new file with mode: 0644]

index 81b6eae..28c59fe 100644 (file)
@@ -247,6 +247,11 @@ HAVE_VORBIS=no, )
 dnl check for gtkdoc
 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false)
 
+dnl check for db2html
+AC_CHECK_PROG(HAVE_DB2HTML, db2html, true, false)
+AC_CHECK_PROG(HAVE_DB2PS, db2ps, true, false)
+AC_CHECK_PROG(HAVE_DB2PDF, db2pdf, true, false)
+
 
 dnl ######################################################################
 dnl # Check command line parameters, and set shell variables accordingly #
@@ -371,6 +376,9 @@ AM_CONDITIONAL(HAVE_NASM,           test "x$HAVE_NASM" = "xyes")
 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
 AM_CONDITIONAL(HAVE_LIBXV,          test "x$HAVE_LIBXV" = "xyes")
 AM_CONDITIONAL(HAVE_GTK_DOC,        $HAVE_GTK_DOC)
+AM_CONDITIONAL(HAVE_DB2HTML,        $HAVE_DB2HTML)
+AM_CONDITIONAL(HAVE_DB2PDF,         $HAVE_DB2PDF)
+AM_CONDITIONAL(HAVE_DB2PS,          $HAVE_DB2PS)
 
 
 dnl FIXME: having to AC_SUBST these is messy.  Not sure if CPPFLAGS and LDFLAGS
@@ -466,6 +474,8 @@ tools/Makefile
 docs/Makefile
 docs/gst/Makefile
 docs/gst/gstreamer.types
+docs/manual/Makefile
+docs/manual/images/Makefile
 stamp.h
 gstreamer-config
 gstreamer.spec])
index bc4be8c..5c20418 100644 (file)
@@ -1,4 +1,5 @@
-SUBDIRS = 
+SUBDIRS = manual
+
 if HAVE_GTK_DOC
   SUBDIRS += gst 
 endif
index ec60ea3..1b70be8 100644 (file)
@@ -2,3 +2,10 @@ Makefile
 Makefile.in
 *.bak
 .deps
+gstreamer-manual
+gstreamer-manual.pdf
+gstreamer-manual.ps
+gstreamer-manual.dvi
+gstreamer-manual.tex
+gstreamer-manual.log
+gstreamer-manual.aux
diff --git a/docs/manual/Makefile.am b/docs/manual/Makefile.am
new file mode 100644 (file)
index 0000000..961d7cf
--- /dev/null
@@ -0,0 +1,96 @@
+SUBDIRS = images .
+
+DIST_SUBDIRS = images
+
+EXTRA_DIST = fig \
+             advanced.sgml \
+             bins.sgml \
+             buffers.sgml \
+             components.sgml \
+             connections.sgml \
+             cothreads.sgml \
+             dynamic.sgml \
+             elements.sgml \
+             factories.sgml \
+             ghostpads.sgml \
+             goals.sgml \
+             gstreamer-manual.sgml \
+             helloworld.sgml \
+             helloworld2.sgml \
+             intro.sgml \
+             motivation.sgml \
+             plugins.sgml \
+             programs.sgml \
+             queues.sgml \
+             states.sgml \
+             threads.sgml \
+             typedetection.sgml \
+             utility.sgml \
+             xml.sgml
+
+gstreamer-manual/gstreamer.html:
+       db2html gstreamer-manual.sgml
+
+gstreamer-manual.pdf:
+       db2pdf gstreamer-manual.sgml
+
+gstreamer-manual.ps:
+       db2ps gstreamer-manual.sgml
+
+
+PDFFILES=gstreamer-manual.pdf
+PSFILES=gstreamer-manual.ps
+
+
+htmldocs: gstreamer-manual/gstreamer.html
+       ln -s ../images gstreamer-manual || true
+htmldist: 
+       @if [ -r gstreamer-manual/gstreamer.html ] ; then \
+           echo "Adding HTML manual to distribution" ; \
+           $(mkinstalldirs) $(distdir)/gstreamer-manual ; \
+           cp -a gstreamer-manual/* $(distdir)/gstreamer-manual/ ; \
+       else \
+           echo "Skipping HTML manual from distribution: can't build" ; \
+       fi
+
+pdfdocs: $(PDFFILES)
+pdfdist:
+       @if [ -r gstreamer-manual.pdf ] ; then \
+           echo "Adding PDF manual to distribution" ; \
+           cp -a gstreamer-manual.pdf $(distdir)/gstreamer-manual.pdf ; \
+       else \
+           echo "Skipping PDF manual from distribution: can't build" ; \
+       fi
+
+psdocs: $(PSFILES)
+psdist:
+       @if [ -r gstreamer-manual.ps ] ; then \
+           echo "Adding PS manual to distribution" ; \
+           cp -a gstreamer-manual.ps $(distdir)/gstreamer-manual.ps ; \
+       else \
+           echo "Skipping PS manual from distribution: can't build" ; \
+       fi
+
+# Data to install, in the usual automake way
+docdatadir   = $(datadir)/gstreamer
+docdata_DATA = $(PDFFILES) $(PSFILES)
+
+htmlinst:
+       @if [ -r gstreamer-manual/gstreamer.html ] ; then \
+       echo "Installing HTML documentation" ; \
+           $(mkinstalldirs) $(DESTDIR)$(docdatadir)/gstreamer-manual ; \
+           $(INSTALL_DATA) gstreamer-manual/* $(DESTDIR)$(docdatadir)/gstreamer-manual ; \
+       else \
+           if [ -r $(srcdir)/gstreamer-manual/gstreamer.html ] ; then \
+               echo "Installing HTML documentation" ; \
+               $(mkinstalldirs) $(DESTDIR)$(docdatadir)/gstreamer-manual ; \
+               $(INSTALL_DATA) $(srcdir)/gstreamer-manual/* $(DESTDIR)$(docdatadir)/gstreamer-manual ; \
+           else \
+               echo "NOT installing HTML documentation: not present, and can't generate" ; \
+           fi \
+       fi
+
+all-local: htmldocs pdfdocs psdocs
+dist-hook: htmldist pdfdist psdist
+install-data-local: htmlinst
+
index e33609d..093f7a4 100644 (file)
@@ -1 +1,4 @@
 *.png
+*.eps
+Makefile.in
+Makefile
diff --git a/docs/manual/images/Makefile.am b/docs/manual/images/Makefile.am
new file mode 100644 (file)
index 0000000..3fc0557
--- /dev/null
@@ -0,0 +1,38 @@
+fig_pngs= \
+         bin-element.png \
+         connected-elements.png \
+         filter-element-multi.png \
+         filter-element.png \
+         hello-world.png \
+         mime-world.png \
+         queue.png \
+         sink-element.png \
+         src-element.png \
+         state-diagram.png \
+         thread.png
+
+fig_epss= \
+         bin-element.eps \
+         connected-elements.eps \
+         filter-element-multi.eps \
+         filter-element.eps \
+         hello-world.eps \
+         mime-world.eps \
+         queue.eps \
+         sink-element.eps \
+         src-element.eps \
+         state-diagram.eps \
+         thread.eps
+
+png_images: $(fig_pngs)
+eps_images: $(fig_epss)
+
+%.png : ../fig/%.fig
+       fig2dev -L png -s 16 $< $@
+
+%.eps : ../fig/%.fig
+       fig2dev -L eps -s 16 $< $@
+
+
+all-local: png_images eps_images
+