www.delorie.com/gnu/docs/guile/guile_374.html   search  
Buy GNU books!

Guile Reference Manual

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

33.1 Configuration, Build and Installation

The following procedures and variables provide information about how Guile was configured, built and installed on your system.

Scheme Procedure: version
Scheme Procedure: effective-version
Scheme Procedure: major-version
Scheme Procedure: minor-version
Scheme Procedure: micro-version
C Function: scm_version ()
C Function: scm_effective_version ()
C Function: scm_major_version ()
C Function: scm_minor_version ()
C Function: scm_micro_version ()
Return a string describing Guile's full version number, effective version number, major, minor or micro version number, respectively. The effective-version function returns the version name that should remain unchanged during a stable series. Currently that means that it omits the micro version. The effective version should be used for items like the versioned share directory name i.e. `/usr/share/guile/1.6/'

(version) => "1.6.0"
(effective-version) => "1.6"
(major-version) => "1"
(minor-version) => "6"
(micro-version) => "0"

Scheme Procedure: %package-data-dir
C Function: scm_sys_package_data_dir ()
Return the name of the directory under which Guile Scheme files in general are stored. On Unix-like systems, this is usually `/usr/local/share/guile' or `/usr/share/guile'.

Scheme Procedure: %library-dir
C Function: scm_sys_library_dir ()
Return the name of the directory where the Guile Scheme files that belong to the core Guile installation (as opposed to files from a 3rd party package) are installed. On Unix-like systems, this is usually `/usr/local/share/guile/<GUILE_EFFECTIVE_VERSION>' or `/usr/share/guile/<GUILE_EFFECTIVE_VERSION>', for example: `/usr/local/share/guile/1.6'.

Scheme Procedure: %site-dir
C Function: scm_sys_site_dir ()
Return the name of the directory where Guile Scheme files specific to your site should be installed. On Unix-like systems, this is usually `/usr/local/share/guile/site' or `/usr/share/guile/site'.

Variable: %load-path
List of directories which should be searched for Scheme modules and libraries. %load-path is initialized when Guile starts up to (list (%site-dir) (%library-dir) (%package-data-dir) "."), prepended with the contents of the GUILE_LOAD_PATH environment variable, if it is set.

Scheme Procedure: parse-path path [tail]
C Function: scm_parse_path (path, tail)
Parse path, which is expected to be a colon-separated string, into a list and return the resulting list with tail appended. If path is #f, tail is returned.

Scheme Procedure: search-path path filename [extensions]
C Function: scm_search_path (path, filename, extensions)
Search path for a directory containing a file named filename. The file must be readable, and not a directory. If we find one, return its full filename; otherwise, return #f. If filename is absolute, return it unchanged. If given, extensions is a list of strings; for each directory in path, we search for filename concatenated with each extension.

Variable: %guile-build-info
Alist of information collected during the building of a particular Guile. Entries can be grouped into one of several categories: directories, env vars, and versioning info.

Briefly, here are the keys in %guile-build-info, by group:

srcdir, top_srcdir, prefix, exec_prefix, bindir, sbindir, libexecdir, datadir, sysconfdir, sharedstatedir, localstatedir, libdir, infodir, mandir, includedir, pkgdatadir, pkglibdir, pkgincludedir
env vars
versioning info
guileversion, libguileinterface, buildstamp

Values are all strings. The value for LIBS is typically found also as a part of "guile-config link" output. The value for guileversion has form X.Y.Z, and should be the same as returned by (version). The value for libguileinterface is libtool compatible and has form CURRENT:REVISION:AGE. The value for buildstamp is the output of the date(1) command.

In the source, %guile-build-info is initialized from libguile/libpath.h, which is completely generated, so deleting this file before a build guarantees up-to-date values for that build.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003