axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] rule for making NRLIBs


From: Vanuxem Grégory
Subject: Re: [Axiom-developer] rule for making NRLIBs
Date: Sat, 07 Oct 2006 18:07:15 +0200

Le samedi 07 octobre 2006 à 16:41 +0200, Waldek Hebisch a écrit : 
> > Le samedi 07 octobre 2006 ? 05:41 +0200, Waldek Hebisch a écrit :
> > > The current rule in src/algebra/Makefile.pamphlet does not work
> > > during re-make. Namely, SPAD compiler fails when NRLIB directory
> > > already exists. I propose to add the following:
> > > 
> > > --- pp/build-improvements/src/algebra/Makefile.pamphlet   2006-09-29 
> > > 21:09:42.000000000 +0200
> > > +++ build-improvements.nn5/src/algebra/Makefile.pamphlet  2006-10-07 
> > > 05:32:35.000000000 +0200
> > > @@ -1631,6 +1631,7 @@
> > >  .PRECIOUS: ${MID}/%.NRLIB/code.o
> > >  ${MID}/%.NRLIB/code.o: ${MID}/%.spad
> > >   @ echo compiling $*.spad to $*.NRLIB
> > > + rm -rf ${MID}/$*.NRLIB
> > >   @ (cd ${MID} ; \
> > >      if [ -z "${NOISE}" ] ; then \
> > >       echo ")co $*.spad" | ${INTERPSYS}  ; \
> > > 
> > > One could also modify SPAD compiler to remove existing NRLIB, 
> > 
> > I think it's the same bug than the bug #302 . See the thread
> > "Cannot Rename The File Erlib To NRLIB"  in Axiom-developer mail
> > Archives. Anyway this issue has to be discussed since it has a lot of
> > implications in the interpreter; some functions need to be modified,
> > they use (probe-file ...) and (delete-file ...) on directories. There is
> > apparently no consensus, as far as I know, on what 'probe-file' and
> > 'delete-file' have to do for directories so...
> > 
> > Greg
> >
> 
> Yes, the problem is related to bug #302.  I agree that fix for bug #302
> needs some discussion.  On the other hand I think that last reason I gave
> (forcing build failure in case of compilation errors) alone justifies
> the patch. Concerning bug #302, I would globally replace probe-file and
> delete-file by axiom-probe-file and axiom-delete-file and then I would
> use whatever host Lisp offers so that axiom-probe-file behaves on
> directories the same as on files (and the similarely for axiom-delete-file).
> 
> > P.S. I have encountered this issue in a totally different context this
> > is why I say a lot of implications; grep the interpreter for probe-file
> > and delete-file. I have fixed some parts of the interpreter in this
> > regard but probably not all, my aim was/is different.
> 
> When you speak about "a lot of implications" do you mean that probe-file
> is used in many places or that it is used in may different ways?  In the
> first case a wrapper called axiom-probe-file would be a perfect solution.

I meant they are used in many places and we will need, I think, to check
the use of probe-file and delete-file everywhere (for example `egrep -ri
'probe_?-file' src/interp/ |wc -l` returns 84  (in Gold)) .

Yes, I think too that a wrapper function/macro would be a good idea
thought I don't think it will have to be used everywhere. This leads to
other questions such that will we use the function directoryp, which is
a wrapper to a C functions defined in src/lib/cfuns-c.c.pamphlet, in
this wrapper? A new function has been added to the system package of
GCL, namely 'stat', so will we rewrite a full lisp directoryp function
and remove this C function from Axiom? Will this wrapper (axiom-probe|
delete-file) use stat or directoryp etc, etc...

> > > but
> > > remove NRLIB from the makefile has advantage that build will fail
> > > if NRLIB can not be recompiled -- currently build goes on using
> > > stale NRLIB, which is very confusing for testing.

I do not use the build-improvements branch but I'm really interested in it if 
these
modifications allows users to use modified category/domain/package in 
src/algebra
after a recompilation of Axiom (only modified files of course). This is not the
case actually as far as I know.

Thanks for your work,

Greg





reply via email to

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