clisp-link [create] [] [module...]file
clisp-link [add] [] [source] [destination...]module
clisp-link [run] [] [source...]module
clisp-link [install] [...]module
This shell script operates on CLISP module sets and linking sets:
creates new module sets out of
source filesadds module sets to a linking set to produce a
new linking setruns CLISP with module sets added
Platform Dependent: Only in CLISP built without configure flag --without-dynamic-modules.
installs new module sets for general use
createThe command
$clisp-linkcreatemodulefile...
creates a module set in module directory which refers
(via symbolic links) to files file...
The files are expected to be modules of their own.
addThe command
$clisp-linkaddsourcedestinationmodule...
combines the linking set in directory source and the modules in
directories module... to a new linking set, in the directory destination
which is newly created.
runThe command
$clisp-linkrunsourcemodule...
runs the linking set in directory source, with the modules
in directories module...
Unless CLISP has been built with the configuration option
--without-dynamic-modules, the loading will be performed using SYS::DYNLOAD-MODULES.
Otherwise - this is much slower - a temporary linking set will be created
and deleted afterwards.
installPlatform Dependent: Only in CLISP built without configure flag --without-dynamic-modules.
The command
$clisp-linkinstallmodule...
installs the modules in directories module... into CUSTOM:*LIB-DIRECTORY* or, if
it is not writable to the user (e.g., if a system-wide CLISP
installation is used and the user does not have administrative privileges),
into CUSTOM:*USER-LIB-DIRECTORY*.
Variable CUSTOM:*USER-LIB-DIRECTORY* is initially set to
(
if that directory exists, and can be reset in the RC file.MERGE-PATHNAMES ".clisp/" (USER-HOMEDIR-PATHNAME))
Do not add CUSTOM:*USER-LIB-DIRECTORY* to CUSTOM:*LOAD-PATHS* or under any
element thereof. Use REQUIRE instead of LOAD to load
dynamic modules.
For this command to work, each module directory must
contain a Makefile with a clisp-module-distrib
target which uses LN to distribute the files necessary
to run the module into destdir. This is in addition to
the general requirement that link.sh is present.
clisp-link needs a “link kit” directory containing:
"modules.c""clisp.h" clisp-link expects to find these files in a
subdirectory linkkit/ of the installation directory
(i.e., CUSTOM:*LIB-DIRECTORY*) which it acquires by running
$`dirname $0`/clisp-b
This can be overridden by the environment variable CLISP_LINKKIT.