gcl-devel
[Top][All Lists]
Advanced

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

[Gcl-devel] RE: [Axiom-developer] 2.6.7


From: Bill Page
Subject: [Gcl-devel] RE: [Axiom-developer] 2.6.7
Date: Fri, 15 Jul 2005 23:41:37 -0400

Hi Camm,

Thanks for working on building Axiom on gcl 2.6.7. I think
it would be great to move Axiom to this version ASAP.

On July 15, 2005 6:47 PM you wrote:

> Greetings!  In testing the 2.6.7 build in preparation for
> release, I've run across the following in the 20050201 axiom
> source build:
>
> (1) ->  
>   >> System error:
>   Can't change the current directory to "NIL".
>
> protected-symbol-warn called with (NIL)
>
> I think I recall seeing this discussed before, and that there
> might be a fix.  Can anyone please give me a pointer?  I want
> to make sure that the Debian axiom package is not broken by
> the new stable release.

It is not clear from your description where this problem 
occurs in your build but it is likely related to the
following patch originally provided by Mike Thomas. In
my case this problem occurred during the building of
the databases on Windows and that is cured by the patch
below (plus my additional change mentioned in the email).

I have since built Axiom on Fedora Core 3 with 2_6_7pre
but I do not recall having to make this patch in that
case.

-----Original Message-----
From: address@hidden
[mailto:address@hidden On Behalf Of
Bill Page
Sent: May 29, 2005 9:36 PM
To: 'Mike Thomas'
Cc: 'Camm Maguire'; address@hidden; address@hidden
Subject: RE: [Gcl-devel] RE: [Axiom-developer] building Axiom with
GCLVersion_2_6_7pre fails

Mike,

On May 29, 2005 9:20 PM you wrote:

> ...
>The fix then is as follows:
>
-----------
diff -rN old-axiom--windows--1/src/interp/daase.lisp.pamphlet
new-axiom--windows--1/src/interp/daase.lisp.pamphlet
843c843
<   (setq thisdir (namestring (probe-file ".")))
---
>   (setq thisdir (namestring (truename ".")))
1109c1109
<      (list (list '|dir| (namestring (probe-file "./")) ))
---
>      (list (list '|dir| (namestring (truename "./")) ))

---------
I think that there is one more place in daase.lisp.pamphlet
near you last patch where probe-file should be changed to
truename:

  (dolist (dir dirlist)
          (localdatabase nil
                         (list (list '|dir|
                                     (namestring (probe-file
                                                  (format nil "./~a"
                                                          dir)))))
                         'make-database))

---------

Right?

With these three changes, my version of Axiom for Windows
builds with gcl Version_2_6_7pre.

Great!

Regards,
Bill Page.



-----Original Message-----
From: Mike Thomas [mailto:address@hidden 
Sent: May 29, 2005 9:20 PM
To: Bill Page (E-mail); 'Camm Maguire'
Cc: address@hidden; address@hidden
Subject: RE: [Gcl-devel] RE: [Axiom-developer] building Axiom with GCL
Version_2_6_7pre fails


Thanks Bill and Camm.

Bill wrote:

| On Friday, May 27, 2005 10:06 AM Camm Maguire wrote:
|
| > ...
| > probe-file tests whether a file exists.
| >
| > probe-file returns false if there is no file named
| > pathspec, and otherwise returns the truename of pathspec.
| >
| > A file here should be sopentheing that could be opened with
| > (open...) -- we have no such ability currently for directories.
| >
| > Is this a problem to follow in mingw?
|
| No it is not a problem. In fact that is exactly what GCL
| Version_2_6_7pre on Windows does now.
|
| >
| > (probe-file "./") returns nil on Windows with the latest changes.
| >
|
| The problem is in the Axiom source for daase.lisp.pamphlet.
|
| > In daase.lisp.pamphlet the "./" is hard wired:
| >
| >   (localdatabase nil
| >      (list (list '|dir| (namestring (probe-file "./")) ))
| >      'make-database)
| >
|
| Here Axiom is trying to find the name of the "current"
| directory which it passes to |dir|. It should probably just
| call (truename "./"). Or better, perhaps there should be a
| standard lisp mechanism to do what Axiom's |dir| does.



The fix then is as follows:

diff -rN old-axiom--windows--1/src/interp/daase.lisp.pamphlet
new-axiom--windows
--1/src/interp/daase.lisp.pamphlet
843c843
<   (setq thisdir (namestring (probe-file ".")))
---
>   (setq thisdir (namestring (truename ".")))
1109c1109
<      (list (list '|dir| (namestring (probe-file "./")) ))
---
>      (list (list '|dir| (namestring (truename "./")) ))


Cheers

Mike Thomas.






reply via email to

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