User manual: move plugin build hints to plugin READMEs.
authorMatt Birkholz <matt@birchwood-abbey.net>
Thu, 20 Sep 2018 07:33:18 +0000 (00:33 -0700)
committerMatt Birkholz <matt@birchwood-abbey.net>
Thu, 20 Sep 2018 07:33:18 +0000 (00:33 -0700)
doc/user-manual/user.texinfo
src/blowfish/README
src/gdbm/README
src/mcrypt/README
src/pgsql/README
src/x11-screen/README
src/x11/README

index c211c07ee71dbdd05d7166128e5073c3ad0f86bd..cca9dd92cc7516240f540ef3c4f09716965953d5 100644 (file)
@@ -240,58 +240,25 @@ Depending on configuration options and file-system permissions, you
 may need super-user privileges to do the installation step.
 @end enumerate
 
-@emph{After} you have installed Scheme, you can install a few
-dynamically loadable options.  These are configured, built and
-installed in the customary way.  To install the @code{gdbm}
-option:
-
-@smallexample
-(cd gdbm && ./configure && make && make install)
-@end smallexample
-
-The @code{make install} command will attempt to create a subdirectory
-in the first directory on the host Scheme's library path.  If that
-directory is not writable by you, super-user privileges may be
-required.
-
-You can put a writable directory at the front of your host Scheme's
-library path by setting the @code{MITSCHEME_LIBRARY_PATH} environment
-variable
-
-@smallexample
-export MITSCHEME_LIBRARY_PATH=\
-       ~/mit-scheme-plugins:/usr/local/lib/mit-scheme-x86-64
-@end smallexample
-
-or including the @code{--prepend-library} option on the command line.
-
-@smallexample
-mit-scheme --prepend-library ~/mit-scheme-plugins
-@end smallexample
-
-A few of the included options wrap popular Unix libraries.  To compile
-and link them you often need ``developers' packages'' installed first.
-The following table lists the included options and an example
-developers' package name (and shared library name).  The package names
-can vary quite a bit among Unix distributions; the library names less
-so.  Please see the @file{README} file in each option's subdirectory
-for more information.
-
-@table @option
-@item blowfish
-libssl-dev (-lcrypto)
-@item gdbm
-libgdbm-dev (-lgdbm)
-@item mcrypt
-libmcrypt-dev (-lmcrypt)
-@item postgresql
-libpq-dev (-lpq)
-@item X11
-libx11-dev (-lX11)
-@end table
-
-After installing the software and any options, you can delete the
-unpacked directory:
+After you have installed Scheme you will want to install several
+@dfn{plugins}.  Scheme no longer uses dynamically loaded microcode
+modules installed with Scheme.  The micromodules have been converted
+into plugins: new subsystems that use the C/FFI to dynamically load
+the same code.  Crucially at this point plugins can be built and
+installed separately.
+
+To get all of the functionality previously available in version 9.2
+you will need to build and install all of the plugins included in the
+@file{src} subdirectory: blowfish, gdbm, mcrypt, pgsql, x11 and
+x11-screen.  Without the x11-screen option installed Edwin will only
+display on a terminal.
+
+These plugins are all configured, built and installed in the GNU
+standard way.  See the @file{README} file in each plugin's source
+directory for complete details.
+
+After installing Scheme and your desired plugins, you can delete the
+source directory:
 
 @example
 cd ../..
index 6e11566fc51a4826b2ead3242789e90f2120106a..2473363c51b4da28ad4725c55a09fc4670194d32 100644 (file)
@@ -1,10 +1,24 @@
 The Blowfish option.
 
-This plugin creates a (blowfish) package.  It is built in the
-customary GNU way:
+This plugin creates a (blowfish) package.  It is built in the GNU
+standard way (below).  It expects the blowfish library header file to
+be available, but often headers are not installed with the library.
+On Ubuntu, when using the OpenSSL library, the libssl-dev package must
+be installed before running the configure script.  Other options
+include the libcrypto++-dev package or any library that provides the
+blowfish header.  (Some adjustment to the configure script may be
+necessary.)
+
+The GNU standard way:
 
     ./configure [--with-openssl=directory]...
-    make all check install
+    make all
+    make check
+    make install
+
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
 To use:
 
@@ -25,3 +39,9 @@ To import into a CREF package set, add this to your .pkg file:
       (import (blowfish)
               blowfish-set-key
               ...))
+
+Please see the manual for API details.  An Info version should have
+been installed along with the plugin.  If you have a texlive or
+similar TeX environment installed, then HTML and PDF versions of the
+manual can be created with the GNU standard targets install-html and
+install-pdf.
index 77a558320f7f2c0a51e567b898a9b3626d696a7c..68a907b59c2c566f25a63c12b93a72585aed693f 100644 (file)
@@ -1,10 +1,21 @@
 The GDBM option.
 
-This plugin creates a (gdbm) package.  It is built in the customary
-GNU way:
+This plugin creates a (gdbm) package.  It is built in the GNU standard
+way (below).  It expects the blowfish library header file to be
+available, but often headers are not installed with the library.  On
+Ubuntu the libgdbm-dev package must be installed before running the
+configure script.
+
+The GNU standard way:
 
     ./configure ...
-    make all check install
+    make all
+    make check
+    make install
+
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
 To use:
 
@@ -25,3 +36,9 @@ To import into a CREF package set, add this to your .pkg file:
       (import (gdbm)
               gdbm-open
               ...))
+
+Please see the manual for API details.  An Info version should have
+been installed along with the plugin.  If you have a texlive or
+similar TeX environment installed, then HTML and PDF versions of the
+manual can be created with the GNU standard targets install-html and
+install-pdf.
index 2d80c008ff702bdd71ec4268eb4c0038bca4ae7c..8716b4f0f69ca779b1e3956823b5c2b9725138f7 100644 (file)
@@ -1,10 +1,21 @@
 The Mcrypt option.
 
-This plugin creates an (mcrypt) package.  It is built in the customary
-GNU way:
+This plugin creates an (mcrypt) package.  It is built in the GNU
+standard way (below).  It expects the mcrypt library header file to be
+available, but often headers are not installed with the library.  On
+Ubuntu the libmcrypt-dev package must be installed before running the
+configure script.
+
+The GNU standard way:
 
     ./configure ...
-    make all check install
+    make all
+    make check
+    make install
+
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
 To use:
 
index e01f882f9f4289d258484c4faa645649fd5bcc31..3a5b959484ee322977b6d0dd7a44b191bd0dbe62 100644 (file)
@@ -1,10 +1,20 @@
 The PostgreSQL option.
 
-This plugin creates a (postgresql) package.  It is built in the customary
-GNU way:
+This plugin creates a (postgresql) package.  It is built in the GNU
+standard way (below).  It expects the pkg-config command to know about
+libpq.  On Ubuntu this means the pkg-config and libpq-dev packages
+must be installed before running the configure script.
+
+The GNU standard way:
 
     ./configure ...
-    make all check install
+    make all
+    make check
+    make install
+
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
 To use:
 
index 11c1288c313dfa1bbbdaab3e8ba227a4e6951ea8..1f9ae27a0e575753a6715559a74170491d1eb168 100644 (file)
@@ -1,19 +1,22 @@
 The X11-SCREEN option.
 
-This plugin creates an (edwin screen x11-screen) package that
-registers an Edwin display type named X11, an exact replacement for
-the microcode module based X screen type.  The plugin is built in the
-customary GNU way, except that it must be installed prior to running
-tests.
+This option creates an (edwin screen x11-screen) package that is
+autoloaded by Edwin's X display type.  It is built in the GNU standard
+way (below).  It does not use the C/FFI but uses the X11 plugin's
+Terminal API.
+
+The GNU standard way:
 
     ./configure ...
-    make all install check
+    make all
+    make check
+    make install
 
-To load:
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
-    (load-option 'x11-screen)
+To use:
 
-Loading this plugin re-assigns bindings in (edwin) and (edwin
-x-commands); any existing Edwin screens will stop working.  You must
-load this option before starting Edwin.  If the DISPLAY environment
-variable is set, Edwin will create X11 screens.
+This option is autoloaded by Edwin when the DISPLAY environment
+variable is set.
index f3540c93333b3621be8ea2095e56f3a060ec4dd6..a576b842db277e216667eaaea36297692a921eb8 100644 (file)
@@ -1,20 +1,31 @@
 The X11 option.
 
-This plugin creates an (x11) package.  It is built in the customary
-GNU way:
+This plugin creates an (x11) package.  It is built in the GNU standard
+way (below).  It expects the pkg-config command to know about x11, and
+for certain auxiliary headers to be available.  On Ubuntu this means
+the pkg-config, libx11-dev and x11proto-dev packages must be installed
+before running the configure script.
+
+The GNU standard way:
 
     ./configure ...
-    make all check install
+    make all
+    make check
+    make install
+
+The last command will attempt to create a subdirectory in the first
+directory on Scheme's library path.  If that directory is not writable
+by you, super-user privileges may be required.
 
 To use:
 
     (load-option 'x11)
     (import-x11)
 
-The import-x11 procedure will modify the REPL's current environment by
-adding bindings linked to the plugin's exports, which are not exported
-to the global environment because they would conflict with the
-deprecated exports from (runtime x-graphics).
+Import-x11 will modify the REPL's current environment by adding
+bindings linked to the plugin's exports.  They are not exported to the
+global environment because they would conflict with the deprecated
+exports from (runtime x-graphics).
 
 To import into a CREF package set, add this to your .pkg file: