diff man/lispref/building.texi @ 2818:9fa10603c898

[xemacs-hg @ 2005-06-19 20:49:43 by aidan] Pure storage is long gone.
author aidan
date Sun, 19 Jun 2005 20:49:47 +0000
parents 87e011e66a78
children 9fae6227ede5
line wrap: on
line diff
--- a/man/lispref/building.texi	Sat Jun 18 21:51:07 2005 +0000
+++ b/man/lispref/building.texi	Sun Jun 19 20:49:47 2005 +0000
@@ -17,7 +17,6 @@
 
 @menu
 * Building XEmacs::     How to preload Lisp libraries into XEmacs.
-* Pure Storage::        A kludge to make preloaded Lisp functions sharable.
 * Garbage Collection::  Reclaiming space for Lisp objects no longer used.
 @end menu
 
@@ -34,9 +33,8 @@
   The @cite{XEmacs Internals Manual} contains more information about this.
 
   Compilation of the C source files in the @file{src} directory
-produces an executable file called @file{temacs}, also called a
-@dfn{bare impure XEmacs}.  It contains the XEmacs Lisp interpreter and I/O
-routines, but not the editing commands.
+produces an executable file called @file{temacs}.  It contains the
+XEmacs Lisp interpreter and I/O routines, but not the editing commands.
 
 @cindex @file{loadup.el}
   Before XEmacs is actually usable, a number of Lisp files need to be
@@ -80,17 +78,12 @@
 out of luck unless you're able to bootstrap @file{xemacs} from
 @file{temacs}.  Note that @samp{make all-elc} actually loads the
 alternative loadup file @file{loadup-el.el}, which works like
-@file{loadup.el} but disables the pure-copying process and forces
-XEmacs to ignore any compiled Lisp files even if they exist.)
+@file{loadup.el} but forces XEmacs to ignore any compiled Lisp files
+even if they exist.)
 
 @cindex @file{site-load.el}
   You can specify additional files to preload by writing a library named
-@file{site-load.el} that loads them.  You may need to increase the value
-of @code{PURESIZE}, in @file{src/puresize.h}, to make room for the
-additional files.  You should @emph{not} modify this file directly,
-however; instead, use the @samp{--puresize} configuration option. (If
-you run out of pure space while dumping @file{xemacs}, you will be told
-how much pure space you actually will need.) However, the advantage of
+@file{site-load.el} that loads them.  However, the advantage of
 preloading additional files decreases as machines get faster.  On modern
 machines, it is often not advisable, especially if the Lisp code is
 on a file system local to the machine running XEmacs.
@@ -178,61 +171,6 @@
 20.1, the value is 1.
 @end defvar
 
-@node Pure Storage
-@appendixsec Pure Storage
-@cindex pure storage
-
-  XEmacs Lisp uses two kinds of storage for user-created Lisp objects:
-@dfn{normal storage} and @dfn{pure storage}.  Normal storage is where
-all the new data created during an XEmacs session is kept; see the
-following section for information on normal storage.  Pure storage is
-used for certain data in the preloaded standard Lisp files---data that
-should never change during actual use of XEmacs.
-
-  Pure storage is allocated only while @file{temacs} is loading the
-standard preloaded Lisp libraries.  In the file @file{xemacs}, it is
-marked as read-only (on operating systems that permit this), so that the
-memory space can be shared by all the XEmacs jobs running on the machine
-at once.  Pure storage is not expandable; a fixed amount is allocated
-when XEmacs is compiled, and if that is not sufficient for the preloaded
-libraries, @file{temacs} aborts with an error message.  If that happens,
-you must increase the compilation parameter @code{PURESIZE} using the
-@samp{--puresize} option to @file{configure}.  This normally won't
-happen unless you try to preload additional libraries or add features to
-the standard ones.
-
-@defun purecopy object
-This function makes a copy of @var{object} in pure storage and returns
-it.  It copies strings by simply making a new string with the same
-characters in pure storage.  It recursively copies the contents of
-vectors and cons cells.  It does not make copies of other objects such
-as symbols, but just returns them unchanged.  It signals an error if
-asked to copy markers.
-
-This function is a no-op in XEmacs, and its use is deprecated.
-@end defun
-
-@defvar pure-bytes-used
-The value of this variable is the number of bytes of pure storage
-allocated so far.  Typically, in a dumped XEmacs, this number is very
-close to the total amount of pure storage available---if it were not,
-we would preallocate less.
-@end defvar
-
-@defvar purify-flag
-This variable determines whether @code{defun} should make a copy of the
-function definition in pure storage.  If it is non-@code{nil}, then the
-function definition is copied into pure storage.
-
-This flag is @code{t} while loading all of the basic functions for
-building XEmacs initially (allowing those functions to be sharable and
-non-collectible).  Dumping XEmacs as an executable always writes
-@code{nil} in this variable, regardless of the value it actually has
-before and after dumping.
-
-You should not change this flag in a running XEmacs.
-@end defvar
-
 @node Garbage Collection
 @appendixsec Garbage Collection
 @cindex garbage collector