Added building of the manual to the build system. Currently in a rudimentary state - will not gracefully give up if ...

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.
This commit is contained in:
Richard Boulton 2000-10-09 00:34:21 +00:00
parent b772f81d4a
commit f1d8e760fb
6 changed files with 156 additions and 1 deletions

View file

@ -247,6 +247,11 @@ HAVE_VORBIS=no, )
dnl check for gtkdoc dnl check for gtkdoc
AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false) 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 ######################################################################
dnl # Check command line parameters, and set shell variables accordingly # 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_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
AM_CONDITIONAL(HAVE_LIBXV, test "x$HAVE_LIBXV" = "xyes") AM_CONDITIONAL(HAVE_LIBXV, test "x$HAVE_LIBXV" = "xyes")
AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC) 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 dnl FIXME: having to AC_SUBST these is messy. Not sure if CPPFLAGS and LDFLAGS
@ -466,6 +474,8 @@ tools/Makefile
docs/Makefile docs/Makefile
docs/gst/Makefile docs/gst/Makefile
docs/gst/gstreamer.types docs/gst/gstreamer.types
docs/manual/Makefile
docs/manual/images/Makefile
stamp.h stamp.h
gstreamer-config gstreamer-config
gstreamer.spec]) gstreamer.spec])

View file

@ -1,4 +1,5 @@
SUBDIRS = SUBDIRS = manual
if HAVE_GTK_DOC if HAVE_GTK_DOC
SUBDIRS += gst SUBDIRS += gst
endif endif

View file

@ -2,3 +2,10 @@ Makefile
Makefile.in Makefile.in
*.bak *.bak
.deps .deps
gstreamer-manual
gstreamer-manual.pdf
gstreamer-manual.ps
gstreamer-manual.dvi
gstreamer-manual.tex
gstreamer-manual.log
gstreamer-manual.aux

96
docs/manual/Makefile.am Normal file
View file

@ -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

View file

@ -1 +1,4 @@
*.png *.png
*.eps
Makefile.in
Makefile

View file

@ -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