Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/branches/SMLNJ/src/system/README
ViewVC logotype

Diff of /sml/branches/SMLNJ/src/system/README

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 428, Wed Sep 8 09:47:00 1999 UTC revision 429, Wed Sep 8 09:47:00 1999 UTC
# Line 146  Line 146 
146    
147  After you have made the new heap image, the new libraries are in a  After you have made the new heap image, the new libraries are in a
148  separate directory whose name is derived from the name of the heap  separate directory whose name is derived from the name of the heap
149  image.  The "testrun" script that you also find here will run the heap  image.  The "testml" script that you also find here will run the heap
150  image and instruct it to look for its libraries in that new library  image and instruct it to look for its libraries in that new library
151  directory.  directory.
152  "testrun" takes the name of the heap image as its single argument.  It  "testml" takes the name of the heap image as its single argument.  It
153  expects the library directory to be the one that makeml builds.  expects the library directory to be the one that makeml builds.
154    
155  * Installing a heap image for more permanent use  * Installing a heap image for more permanent use
# Line 268  Line 268 
268  This mapping (from anchors to names in the boot directory) is the one  This mapping (from anchors to names in the boot directory) is the one
269  that will get frozen into the generated heap image at boot time.  that will get frozen into the generated heap image at boot time.
270  Thus, unless it is changed, CM will look for its libraries in the boot  Thus, unless it is changed, CM will look for its libraries in the boot
271  directory.  The aforementioned "testrun" script will make sure that  directory.  The aforementioned "testml" script will make sure that
272  the mapping is changed to the one specified in a new "pathconfig" file  the mapping is changed to the one specified in a new "pathconfig" file
273  which was created by makeml and placed into the test library  which was created by makeml and placed into the test library
274  directory.  It points all anchors to the corresponding entry in the  directory.  It points all anchors to the corresponding entry in the
275  test library directory.  Thus, "testrun" will let a new heap image run  test library directory.  Thus, "testml" will let a new heap image run
276  with its corresponding new libraries.  with its corresponding new libraries.
277    
278  Normally, however, CM consults other pathconfig files at startup --  Normally, however, CM consults other pathconfig files at startup --
# Line 290  Line 290 
290  before making the heap image.  Therefore, heap images generated by  before making the heap image.  Therefore, heap images generated by
291  makeml will look for their global pathconfig file in  makeml will look for their global pathconfig file in
292    
293          `pwd`/../../stable-libs/pathconfig          `pwd`/../../lib/pathconfig
294    
295  For example, I always keep my "good" libraries in  For example, I always keep my "good" libraries in `pwd`/../../lib --
296  `pwd`/../../stable-libs and let the pathconfig file point its anchors  where both the main "install" script and the "installml" script (see
297  to the members of that directory.  below) also put them -- so I don't have to do anything special about
298    my pathconfig file.
299    
300  Once I have new heap image and libraries working, I replace the old  Once I have new heap image and libraries working, I replace the old
301  "good" image with the new one:  "good" image with the new one:
# Line 303  Line 304 
304    
305  and then:  and then:
306    
307    rm -r ../../stable-libs/*.cm    rm -r ../../lib/*.cm
308    mv <image>.libs/*.cm ../../stable-libs    mv <image>.libs/*.cm ../../lib
309    
310    For convenience, there is a script called "installml" that automates
311    this task.  Using the script has the added advantage that it will not
312    clobber libraries that belong to other than the current architecture.
313    (The rather heavy-handed "rm/mv" approach above will delete all stable
314    libraries for all architectures.)
315    
316  Of course, you can organize things differently for yourself -- the  Of course, you can organize things differently for yourself -- the
317  path configuration mechanism should be sufficiently flexible.  path configuration mechanism should be sufficiently flexible.

Legend:
Removed from v.428  
changed lines
  Added in v.429

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0