[Aldor-l] libaxiom.al: dependencies

Stephen Watt watt at scl.csd.uwo.ca
Sat May 31 07:57:01 EDT 2008


It should be enough for "a" to mention just "b".  

If "b" was created using a version of the compiler that circumvents
the "inline from" declaration (thereby allowing inlining from everything),
then if "c" changes, "a" may need to be recompiled.

-- Stephen


On Thu, May 29, 2008 at 01:08:10PM +0200, Ralf Hemmecke wrote:
> Dear Peter, and all who know about the Aldor compiler internals...
> 
> I've checked now what dependencies you have calculated in src_aldor2.
> That seemingly differs by a few domain.
> 
> Maybe it is important, but maybe not. Therefore my question. Do you know 
> enough about the aldor compiler internals to be able to say something 
> about the following?
> 
> Suppose I have 3 files a.ap b.ap, c.ap where a depends directly on b but 
> not directly on c. And where b depends directly on c.
> 
> Now I want to create the corresponding .ao file.
> 
> Is it enough if while compiling a.ap that only b.ao is mentioned as a 
> library?
> 
> The current compiler 1.1.0 compiles the stuff below without problem. If 
> it really is enough to list direct dependencies why should one bother to 
> figure out dependencies recursively?
> 
> It might be different if I try to compile to .a files, but I am speaking 
> here only of the .ao files which are necessary for the libaxiom.al 
> construction.
> 
> Ralf
> 
> ---BEGIN a.as
> #include "aldor"
> #library LLL "library"
> import from LLL;
> AAA: with {
> 	afoo: % -> %
> } == add {
> 	Rep == BBB;
> 	import from Rep;
> 	afoo(x: %): % == per bfoo rep x;
> }
> ---END a.as
> 
> 
> ---BEGIN b.as
> #include "aldor"
> #library LLL "library"
> import from LLL;
> BBB: with {
> 	bfoo: % -> %
> } == add {
> 	Rep == CCC;
> 	import from Rep;
> 	bfoo(x: %): % == per cfoo rep x;
> }
> ---END b.as
> 
> ---BEGIN c.as
> #include "aldor"
> CCC: with {
> 	cfoo: % -> %
> } == add {
> 	cfoo(x: %): % == x;
> }
> ---END c.as
> 
> ---BEGIN Makefile
> a.ao: a.as libbbb.al
> 	cp libbbb.al liblibrary.al
> 	aldor -llibrary $<
> 
> libbbb.al: b.ao
> 	ar r libbbb.al $<
> 
> b.ao: b.as libccc.al
> 	cp libccc.al liblibrary.al
> 	aldor -llibrary b.as
> 
> libccc.al: c.ao
> 	ar r libccc.al $<
> 
> c.ao: c.as
> 	aldor c.as
> ---END Makefile
> 
> _______________________________________________
> Aldor-l mailing list
> Aldor-l at aldor.org
> http://aldor.org/mailman/listinfo/aldor-l_aldor.org




More information about the Aldor-l mailing list