[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gcl-devel] troubles bulding Maxima with latest GCL CVS

From: Vadim V. Zhytnikov
Subject: Re: [Gcl-devel] troubles bulding Maxima with latest GCL CVS
Date: Sat, 17 Aug 2002 16:40:37 +0300
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.0.0) Gecko/20020526

Camm Maguire пишет:
If it wouldn't be too much trouble, could you post the diff first?
My original concern was in running ansi images in gdb -- and the
answer there seems to be using the system ld for the final link, as
even with a working native reloc code, we don't import the .stabs
debugging section of the objects, so those pieces of code effectively
become black boxes to gdb.  We could change this in the future, or
provide an option to do so, but for now only developers should be
interested and the easiest thing is to provide a make target which
uses ld.  So the symbol table building here is not an issue.

Beyond this, regarding the compile time/runtime initialization -- this
again is apparently not a problem, and I think I now know why.  The
lisp compiler is very careful not to compile in named references to
any functions that aren't available in raw_gcl.  All other function
links are arbitrarily named and connected to the proper function at
load time.  So in short, the symbol table built when initializing
raw_gcl should suffice, and it apparently does or else all hell would
break loose when loading pcl objects as part of the ansi build.
So in sum, I don't think we need to build the symbol table again -- in
fact, it would just be a gratuitous waste of memory space, adding in
symbols which the loader would never need.  But I could be wrong, and
would like to see your diff in any case.

Take care,

Actually patch is very simple (see attachment):
diff -uNr gcl-2.5.0-orig/clcs/makefile gcl-2.5.0/clcs/makefile
--- gcl-2.5.0-orig/clcs/makefile        2002-06-28 08:42:52 +0400
+++ gcl-2.5.0/clcs/makefile     2002-08-17 15:58:23 +0400
@@ -1,11 +1,13 @@

+-include ../makedefs

 compile: ${LISP}
echo '(load "package.lisp")(load "loading.lisp")(jamie-load-clcs :compile)' | ${LISP}

 saved_full_gcl: ${LISP}
- echo '(load "package.lisp")(load "loading.lisp")(jamie-load-clcs :compiled)(system::save-system "saved_full_gcl")' | ${LISP} + echo '(load "package.lisp")(load "loading.lisp")(jamie-load-clcs :compiled)$(INITFORM)(system::save-system "saved_full_gcl")' | ${LISP}

 -include ../makedefs

diff -uNr gcl-2.5.0-orig/pcl/makefile gcl-2.5.0/pcl/makefile
--- gcl-2.5.0-orig/pcl/makefile 2002-08-06 19:43:42 +0400
+++ gcl-2.5.0/pcl/makefile      2002-08-17 15:58:59 +0400
@@ -1,5 +1,7 @@
 # makefile for making pcl -- W. Schelter.

+-include ../makedefs
 #  Directions:
 # make -f makefile.gcl compile
 # make -f makefile.gcl saved_pcl
@@ -18,7 +20,7 @@
        echo ${SETUP} '(pcl::compile-pcl)' | $(LISP)

- echo ${SETUP} '(pcl::load-pcl)(si::save-system "saved_gcl_pcl")' | $(LISP) + echo ${SETUP} '(pcl::load-pcl)$(INITFORM)(si::save-system "saved_gcl_pcl")' | $(LISP)

        rm -f *.o *.fn *.exe *.dll saved_gcl_pcl

We just insert $(INITFORM) right before (si:save-system ...).
The value of $(INITFORM) is defined in h/<arch>.defs and may
be either  equal to (si::build-symbol-table) or empty.
But maybe we should make $(INITFORM) subject to new configure
option, say --enable-symbol-table ?

Best wishes,

     Vadim V. Zhytnikov


Attachment: initform.patch.gz
Description: GNU Zip compressed data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]