-Proposed contrib standard, version $Revision$
+Proposed contrib standard, $Revision$
The SBCL contrib mechanism provides a mechanism to
manage code which does not form part of SBCL itself, but which is
all: # do whatever compilation is necessary
test: # run the package tests
-install: # copy all necessary files into $(INSTALL_DIR)
+install: # copy all necessary files into $(BUILD_ROOT)$(INSTALL_DIR)
If the contrib package involves more than one file, you are encouraged
to use ASDF to build it and load it. A version of asdf is bundled as
an SBCL contrib, which knows to look in $SBCL_HOME/systems/ for asd
files - your install target should create an appropriate symlink there
-to the installed location of the system file. Look in sb-bsd-sockets/Makefile
-for an example of an asdf-using contrib
+to the installed location of the system file. Look in
+sb-bsd-sockets/Makefile for an example of an asdf-using contrib.
-$(INSTALL_DIR) will have been created by the system before your
-install target is called. You do not need to make it yourself.
+$(BUILD_ROOT)$(INSTALL_DIR) will have been created by the system
+before your install target is called. You do not need to make it
+yourself.
* Tests
* Documentation
-[ Would be at least nice. My tendency is to say plain text or HTML,
-and optionally your choice of source format which can generate either
-of the preceding. Document formats not available on typical
-well-endowed-with-free-stuff Unix systems are discouraged. DocBook
-is fine, as the SBCL manual is DocBook anyway ]
+Each package should provide documentation in Texinfo format. For the
+documentation to be included in the sbcl manual, the following must
+hold:
+
+- Each Texinfo file must have the extension `.texinfo' so the
+ automatic manual builder will find it.
+
+- It must contain one @node - @section pair at the top and only
+ @subsection (or lower) sectioning commands within, e.g.
+
+@node Sample Contrib
+@section Sample Contrib
+...
+
+ so that the contrib menu can be created automatically.
+
+Take care to choose unique node names.
[ make install should copy the documentation somewhere that the user
can find it ]