From 24c64119f8e6882b16ac571ab3978246c3572f91 Mon Sep 17 00:00:00 2001 From: Matt Birkholz Date: Fri, 24 Mar 2017 13:28:03 -0700 Subject: [PATCH] Add add-plugin and remove-plugin; maintain an Info index. The postrm Debian installation scripts do not work if they are run after the core package is removed. And prerm scripts do not work if they update indexes based on what is installed. (The package being removed is still installed.) Replace update-html-index and update- optiondb-index with add-plugin and remove-plugin, procedures that add/remove names to/from a list. These work in prerm scripts. Move pucked Info documentation to the pucked project documentation directory. This keeps it separate from the official docs, and keeps dpkg installation from finding them and trying to install them in /usr/share/info/dir (e.g if they were installed in /usr/share/info/ mit-scheme-pucked/). Shorten documentation filenames. Tidy up manual titles and make them more consistent. Make HTML documentation non-optional. It is more important than the non-graphical Info documentation. --- debian/mit-scheme-pucked.doc-base.ffi | 6 +- debian/mit-scheme-pucked.doc-base.ref | 6 +- debian/mit-scheme-pucked.doc-base.sos | 6 +- debian/mit-scheme-pucked.doc-base.user | 6 +- debian/mit-scheme-pucked.info | 5 +- debian/rules | 3 - doc/Makefile.in | 14 +- doc/configure.ac | 20 +- doc/ffi/Makefile.in | 2 +- doc/ffi/ffi.texinfo | 20 +- doc/index.html | 29 +- doc/info-dir | 10 +- doc/make-common.in | 12 +- doc/mit-scheme-pucked.1 | 8 +- doc/mit-scheme-pucked.info.in | 39 ++ doc/ref-manual/Makefile.in | 2 +- doc/ref-manual/scheme.texinfo | 30 +- doc/sos/Makefile.in | 2 +- doc/sos/sos.texinfo | 24 +- doc/user-manual/Makefile.in | 2 +- doc/user-manual/user.texinfo | 25 +- src/Makefile.in | 1 + src/berkeley-db/configure.ac | 9 +- src/blowfish/Makefile.am | 46 +- src/blowfish/configure.ac | 6 + src/blowfish/debian/postinst.in | 5 +- src/blowfish/debian/prerm.in | 5 +- src/blowfish/debian/rules | 8 +- src/cairo/Makefile.am | 50 +-- ...it-scheme-pucked-cairo.texi => cairo.texi} | 19 +- src/cairo/check-doc.sh | 2 +- src/cairo/configure.ac | 6 + src/cairo/debian/doc-base | 8 +- src/cairo/debian/postinst.in | 7 +- src/cairo/debian/prerm.in | 7 +- src/cairo/debian/rules | 7 +- src/edwin/Makefile.am | 38 +- src/edwin/configure.ac | 6 + src/edwin/debian/postinst.in | 5 +- src/edwin/debian/prerm.in | 5 +- src/edwin/debian/rules | 8 +- src/etc/plugins.scm | 1 + src/ffi/build.scm | 395 +++++++++++++----- src/ffi/ffi.pkg | 4 +- src/gdbm/Makefile.am | 46 +- src/gdbm/configure.ac | 6 + src/gdbm/debian/postinst.in | 5 +- src/gdbm/debian/prerm.in | 5 +- src/gdbm/debian/rules | 8 +- src/gl/Makefile.am | 54 +-- src/gl/configure.ac | 6 + src/gl/debian/postinst.in | 5 +- src/gl/debian/prerm.in | 5 +- src/gl/debian/rules | 8 +- src/glib/Makefile.am | 50 +-- src/glib/check-doc.sh | 2 +- src/glib/configure.ac | 6 + src/glib/debian/doc-base | 8 +- src/glib/debian/postinst.in | 7 +- src/glib/debian/prerm.in | 7 +- src/glib/debian/rules | 7 +- src/glib/glib-check-copy.sh | 2 +- ...{mit-scheme-pucked-glib.texi => glib.texi} | 21 +- src/gtk-screen/Makefile.am | 51 ++- src/gtk-screen/configure.ac | 6 + src/gtk-screen/debian/postinst.in | 5 +- src/gtk-screen/debian/prerm.in | 5 +- src/gtk-screen/debian/rules | 8 +- src/gtk/Makefile.am | 50 +-- src/gtk/check-doc.sh | 2 +- src/gtk/configure.ac | 6 + src/gtk/debian/doc-base | 8 +- src/gtk/debian/postinst.in | 7 +- src/gtk/debian/prerm.in | 7 +- src/gtk/debian/rules | 7 +- .../{mit-scheme-pucked-gtk.texi => gtk.texi} | 21 +- src/imail/Makefile.am | 46 +- src/imail/configure.ac | 6 + src/imail/debian/doc-base | 6 +- src/imail/debian/postinst.in | 7 +- src/imail/debian/prerm.in | 7 +- src/imail/debian/rules | 7 +- ...it-scheme-pucked-imail.texi => imail.texi} | 18 +- src/mcrypt/Makefile.am | 46 +- src/mcrypt/configure.ac | 6 + src/mcrypt/debian/postinst.in | 5 +- src/mcrypt/debian/prerm.in | 5 +- src/mcrypt/debian/rules | 8 +- src/md5/Makefile.am | 46 +- src/md5/configure.ac | 6 + src/md5/debian/postinst.in | 5 +- src/md5/debian/prerm.in | 5 +- src/md5/debian/rules | 8 +- src/mhash/Makefile.am | 46 +- src/mhash/configure.ac | 6 + src/mhash/debian/postinst.in | 5 +- src/mhash/debian/prerm.in | 5 +- src/mhash/debian/rules | 8 +- src/pango/Makefile.am | 50 +-- src/pango/check-doc.sh | 2 +- src/pango/configure.ac | 6 + src/pango/debian/doc-base | 8 +- src/pango/debian/postinst.in | 7 +- src/pango/debian/prerm.in | 7 +- src/pango/debian/rules | 7 +- ...it-scheme-pucked-pango.texi => pango.texi} | 19 +- src/pgsql/configure.ac | 8 + src/planetarium/Makefile.am | 50 +-- src/planetarium/configure.ac | 6 + src/planetarium/debian/doc-base | 8 +- src/planetarium/debian/postinst.in | 7 +- src/planetarium/debian/prerm.in | 7 +- src/planetarium/debian/rules | 7 +- ...cked-planetarium.texi => planetarium.texi} | 21 +- src/runtime/ffi.scm | 13 +- src/runtime/runtime.pkg | 4 +- src/x11-screen/Makefile.am | 46 +- src/x11-screen/configure.ac | 7 + src/x11-screen/debian/postinst.in | 5 +- src/x11-screen/debian/prerm.in | 5 +- src/x11-screen/debian/rules | 8 +- src/x11/Makefile.am | 46 +- src/x11/configure.ac | 6 + src/x11/debian/postinst.in | 5 +- src/x11/debian/prerm.in | 5 +- src/x11/debian/rules | 8 +- 126 files changed, 1312 insertions(+), 733 deletions(-) create mode 100644 doc/mit-scheme-pucked.info.in rename src/cairo/{mit-scheme-pucked-cairo.texi => cairo.texi} (98%) create mode 100644 src/etc/plugins.scm rename src/glib/{mit-scheme-pucked-glib.texi => glib.texi} (98%) rename src/gtk/{mit-scheme-pucked-gtk.texi => gtk.texi} (99%) rename src/imail/{mit-scheme-pucked-imail.texi => imail.texi} (99%) rename src/pango/{mit-scheme-pucked-pango.texi => pango.texi} (98%) rename src/planetarium/{mit-scheme-pucked-planetarium.texi => planetarium.texi} (98%) diff --git a/debian/mit-scheme-pucked.doc-base.ffi b/debian/mit-scheme-pucked.doc-base.ffi index 4c07f486e..413cb71d4 100644 --- a/debian/mit-scheme-pucked.doc-base.ffi +++ b/debian/mit-scheme-pucked.doc-base.ffi @@ -7,8 +7,8 @@ Abstract: The FFI Reference Manual: a Foreign Function Interface for MIT/GNU Sch Section: Programming Format: HTML -Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-ffi/index.html -Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-ffi/*.html +Index: /usr/share/doc/mit-scheme-pucked/html/ffi/index.html +Files: /usr/share/doc/mit-scheme-pucked/html/ffi/*.html Format: PDF -Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-ffi.pdf.gz +Files: /usr/share/doc/mit-scheme-pucked/pdf/ffi.pdf.gz diff --git a/debian/mit-scheme-pucked.doc-base.ref b/debian/mit-scheme-pucked.doc-base.ref index 596f688c2..7a32809c0 100644 --- a/debian/mit-scheme-pucked.doc-base.ref +++ b/debian/mit-scheme-pucked.doc-base.ref @@ -6,8 +6,8 @@ Abstract: A detailed description of the MIT/GNU Scheme runtime system. Section: Programming Format: HTML -Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-ref/index.html -Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-ref/*.html +Index: /usr/share/doc/mit-scheme-pucked/html/reference/index.html +Files: /usr/share/doc/mit-scheme-pucked/html/reference/*.html Format: PDF -Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-ref.pdf.gz +Files: /usr/share/doc/mit-scheme-pucked/pdf/reference.pdf.gz diff --git a/debian/mit-scheme-pucked.doc-base.sos b/debian/mit-scheme-pucked.doc-base.sos index 24cd64f76..a0b3e6a2c 100644 --- a/debian/mit-scheme-pucked.doc-base.sos +++ b/debian/mit-scheme-pucked.doc-base.sos @@ -6,8 +6,8 @@ Abstract: SOS is an object-oriented programming extension for MIT/GNU Scheme. Section: Programming Format: HTML -Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-sos/index.html -Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-sos/*.html +Index: /usr/share/doc/mit-scheme-pucked/html/sos/index.html +Files: /usr/share/doc/mit-scheme-pucked/html/sos/*.html Format: PDF -Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-sos.pdf.gz +Files: /usr/share/doc/mit-scheme-pucked/pdf/sos.pdf.gz diff --git a/debian/mit-scheme-pucked.doc-base.user b/debian/mit-scheme-pucked.doc-base.user index 9db8765d3..276677cbe 100644 --- a/debian/mit-scheme-pucked.doc-base.user +++ b/debian/mit-scheme-pucked.doc-base.user @@ -11,8 +11,8 @@ Abstract: This document describes how to install and use MIT/GNU Scheme Section: Programming Format: HTML -Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-user/index.html -Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-user/*.html +Index: /usr/share/doc/mit-scheme-pucked/html/user/index.html +Files: /usr/share/doc/mit-scheme-pucked/html/user/*.html Format: PDF -Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-pucked-user.pdf.gz +Files: /usr/share/doc/mit-scheme-pucked/pdf/user.pdf.gz diff --git a/debian/mit-scheme-pucked.info b/debian/mit-scheme-pucked.info index 95dae55aa..4a53f28a9 100644 --- a/debian/mit-scheme-pucked.info +++ b/debian/mit-scheme-pucked.info @@ -1,4 +1 @@ -doc/imail/mit-scheme-pucked-imail.info* -doc/ref-manual/mit-scheme-pucked-ref.info* -doc/sos/mit-scheme-pucked-sos.info* -doc/user-manual/mit-scheme-pucked-user.info* +doc/mit-scheme-pucked.info diff --git a/debian/rules b/debian/rules index 1197f2f4d..885b79378 100755 --- a/debian/rules +++ b/debian/rules @@ -9,9 +9,6 @@ override_dh_autoreconf: dh_autoreconf sh -- -e -x -c \ 'for d in src doc; do (cd $$d && autoreconf -f -i) done' -CONF_FLAGS += --docdir=/usr/share/doc/mit-scheme-pucked -CONF_FLAGS += --enable-html=/usr/share/doc/mit-scheme-pucked/html -CONF_FLAGS += --enable-pdf=/usr/share/doc/mit-scheme-pucked/pdf CONF_FLAGS += --enable-ps=no override_dh_auto_configure: diff --git a/doc/Makefile.in b/doc/Makefile.in index 4aa52bc4d..6079ba457 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -47,6 +47,8 @@ includedir = @includedir@ docdir = @docdir@ oldincludedir = /usr/include +PROJECT = @PROJECT@ + DESTDIR = top_builddir = . @@ -65,6 +67,7 @@ htmldir = @htmldir@ pdfdir = @pdfdir@ psdir = @psdir@ INST_TARGETS = @INST_TARGETS@ +INSTALL_INFO_PROG = @INSTALL_INFO_PROG@ SUBDIRS = ffi ref-manual sos user-manual DISTCLEAN_FILES = Makefile make-common config.log config.status @@ -104,20 +107,25 @@ maintainer-clean: tags TAGS: -install: install-info-gz install-man $(INST_TARGETS) +install: install-info-gz install-man install-html $(INST_TARGETS) -install-info-gz install-info: +install-info-gz install-info: $(PROJECT).info $(mkinstalldirs) $(DESTDIR)$(infodir) if [ ! -e $(DESTDIR)$(infodir)/dir ]; then \ $(INSTALL_DATA) info-dir $(DESTDIR)$(infodir)/dir; fi + $(INSTALL_DATA) $(PROJECT).info $(DESTDIR)$(infodir)/. + $(INSTALL_INFO_PROG) --info-dir $(DESTDIR)$(infodir)/ $(PROJECT).info @for D in $(SUBDIRS); do \ echo "making $@ in $${D}";\ ( cd $${D} && $(MAKE) $@ ) || exit 1;\ done +$(PROJECT).info: $(PROJECT).info.in + sed -e 's|@SCMDOCDIR@|$(docdir)|g' < $< > $@ + install-man: $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 - $(INSTALL_DATA) mit-scheme-pucked.1 $(DESTDIR)$(mandir)/man1/. + $(INSTALL_DATA) ${PROJECT}.1 $(DESTDIR)$(mandir)/man1/. install-html: $(mkinstalldirs) $(DESTDIR)$(htmldir) diff --git a/doc/configure.ac b/doc/configure.ac index 56d080c7d..8430ea2dc 100644 --- a/doc/configure.ac +++ b/doc/configure.ac @@ -39,19 +39,16 @@ AC_PROG_LN_S AC_PROG_MAKE_SET AC_CHECK_PROG([INSTALL_INFO_PROG], [install-info], [install-info], [true]) +PROJECT=mit-scheme-pucked TARGETS= INST_TARGETS= -AC_ARG_ENABLE([html], - [AC_HELP_STRING([--enable-html], [generate HTML documentation])]) -if test "${enable_html}" = "no"; then - htmldir= -elif test "${enable_html:-yes}" != "yes"; then - htmldir="${enable_html}" -fi -test "${htmldir}" = "" || TARGETS="${TARGETS} \$(TARGET_ROOT)/index.html" -test "${htmldir}" = "" || INST_TARGETS="${INST_TARGETS} install-html" -AC_SUBST([htmldir]) +# Install docs in subdirectories by medium, in anticipation of dozens +# of little plugin manuals. +docdir='$(datarootdir)/doc/$(PROJECT)' +htmldir='$(docdir)/html' +pdfdir='$(docdir)/pdf' +psdir='$(docdir)/ps' AC_ARG_ENABLE([pdf], [AC_HELP_STRING([--enable-pdf], [generate PDF documentation])]) @@ -62,7 +59,6 @@ elif test "${enable_pdf:-yes}" != "yes"; then fi test "${pdfdir}" = "" || TARGETS="${TARGETS} \$(TARGET_ROOT).pdf" test "${pdfdir}" = "" || INST_TARGETS="${INST_TARGETS} install-pdf" -AC_SUBST([pdfdir]) AC_ARG_ENABLE([ps], [AC_HELP_STRING([--enable-ps], [generate Postscript documentation])]) @@ -73,8 +69,8 @@ elif test "${enable_ps}" != "yes"; then fi test "${psdir}" = "" || TARGETS="${TARGETS} \$(TARGET_ROOT).ps" test "${psdir}" = "" || INST_TARGETS="${INST_TARGETS} install-ps" -AC_SUBST([psdir]) +AC_SUBST([PROJECT]) AC_SUBST([TARGETS]) AC_SUBST([INST_TARGETS]) diff --git a/doc/ffi/Makefile.in b/doc/ffi/Makefile.in index b239f72bd..7809d55b5 100644 --- a/doc/ffi/Makefile.in +++ b/doc/ffi/Makefile.in @@ -7,6 +7,6 @@ VPATH = @srcdir@ SOURCES = ffi.texinfo prhello.cdecl prhello.scm TEXINFO_ROOT = ffi -TARGET_ROOT = mit-scheme-ffi +TARGET_ROOT = ffi include $(top_srcdir)/make-common diff --git a/doc/ffi/ffi.texinfo b/doc/ffi/ffi.texinfo index aefe2b64e..12065b45e 100644 --- a/doc/ffi/ffi.texinfo +++ b/doc/ffi/ffi.texinfo @@ -1,9 +1,11 @@ -\input texinfo @c -*-Texinfo-*- +\input texinfo @c -*-texinfo-*- @comment %**start of header -@setfilename mit-scheme-ffi +@setfilename ffi +@comment From automake's version.texi someday: @set VERSION 0.2 -@set UPDATED 2011-09-19 -@settitle FFI @value{VERSION} +@set UPDATED 19 September 2011 +@set SCMVERS 9.2.7 +@settitle MIT/GNU Scheme Pucked FFI Manual @comment %**end of header @ifhtml @@ -16,7 +18,7 @@ @end ifnothtml @copying -This manual documents @acronym{FFI} @value{VERSION}. +This manual documents MIT/GNU Scheme Pucked @acronym{FFI} @value{VERSION}. Copyright @copyright{} 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, @@ -35,14 +37,14 @@ Documentation License.'' @dircategory Programming Languages @direntry -* MIT/GNU Scheme FFI: (mit-scheme-ffi). +* FFI: (mit-scheme-pucked/ffi). Foreign Function Interface @end direntry @titlepage -@title The FFI Reference Manual +@title MIT/GNU Scheme Pucked FFI Manual @subtitle a Foreign Function Interface (version @value{VERSION}) -@subtitle for MIT/GNU Scheme version 9.0.1 +@subtitle for MIT/GNU Scheme Pucked version @value{SCMVERS} @subtitle @value{UPDATED} @author by Matt Birkholz @page @@ -52,7 +54,7 @@ Documentation License.'' @ifnottex @node Top, Introduction, (dir), (dir) -@top FFI +@top MIT/GNU Scheme Pucked FFI Manual @insertcopying @end ifnottex diff --git a/doc/index.html b/doc/index.html index d68426229..c472f8047 100644 --- a/doc/index.html +++ b/doc/index.html @@ -1,23 +1,34 @@ + -MIT/GNU Scheme Pucked Documentation - + + MIT/GNU Scheme Pucked Documentation +

MIT/GNU Scheme Pucked Documentation

-
+ + +

+ The following MIT/GNU Scheme Pucked manuals are available. New + users may want to begin + with Running + Scheme in the user manual. Experienced users may want to check + out the Changes. +

-The following MIT/GNU Scheme Pucked manuals are available. +

Core Manuals

-The following plugin manuals are also available. +

Plugin Manuals