Copyright (C) 2000-2012 |
GNU Info (slib.info)Catalog CompilationCatalog Compilation =================== SLIB combines the catalog information which doesn't vary per user into the file `slibcat' in the implementation-vicinity. Therefore `slibcat' needs change only when new software is installed or compiled. Because the actual pathnames of files can differ from installation to installation, SLIB builds a separate catalog for each implementation it is used with. The definition of `*SLIB-VERSION*' in SLIB file `require.scm' is checked against the catalog association of `*SLIB-VERSION*' to ascertain when versions have changed. I recommend that the definition of `*SLIB-VERSION*' be changed whenever the library is changed. If multiple implementations of Scheme use SLIB, remember that recompiling one `slibcat' will fix only that implementation's catalog. The compilation scripts of Scheme implementations which work with SLIB can automatically trigger catalog compilation by deleting `slibcat' or by invoking a special form of `require': - Procedure: require 'new-catalog This will load `mklibcat', which compiles and writes a new `slibcat'. Another special form of `require' erases SLIB's catalog, forcing it to be reloaded the next time the catalog is queried. - Procedure: require #f Removes SLIB's catalog information. This should be done before saving an executable image so that, when restored, its catalog will be loaded afresh. Each file in the table below is descibed in terms of its file-system independent "vicinity" (Note: Vicinity). The entries of a catalog in the table override those of catalogs above it in the table. `implementation-vicinity' `slibcat' This file contains the associations for the packages comprising SLIB, the `implcat' and the `sitecat's. The associations in the other catalogs override those of the standard catalog. `library-vicinity' `mklibcat.scm' creates `slibcat'. `library-vicinity' `sitecat' This file contains the associations specific to an SLIB installation. `implementation-vicinity' `implcat' This file contains the associations specific to an implementation of Scheme. Different implementations of Scheme should have different `implementation-vicinity'. `implementation-vicinity' `mkimpcat.scm' if present, creates `implcat'. `implementation-vicinity' `sitecat' This file contains the associations specific to a Scheme implementation installation. `home-vicinity' `homecat' This file contains the associations specific to an SLIB user. `user-vicinity' `usercat' This file contains associations effecting only those sessions whose "working directory" is `user-vicinity'. automatically generated by info2www version 1.2.2.9 |