AFAIK, the Sun javac will rebuild anything that needs rebuilt. For most projects
it should just be enough to compile the executable classes, and everything else
will recompile with it. This is not true for Freenet however (AFAIK), since a
lot of classes (the messages, the connections, the addresses) are loaded using
dynamic class.forName() calls. It should be possible to make it slightly more
precise then it is, something like

javac node/Node.java testbed/TestBed.java client/InsertClient.java
client/RequestClient.java message/*.java *Address.java *Connection.java
*Listener.java

should work, and would avoid the problem of the build scripts trying to
compile broken/unfinished classes in the build. 

The version of KJC that comes with Kaffe does not do this though. For it to
work, I found, every file that is called needs to already be compiled, or in
the list of files sent to the compiler when it is run. KJC does not look for a
.java file in same directory, in fact it is not even made to write the .class
files to the directories it reads the java files from (the script is a hack
(-directory ../.. I think it does)).

On Fri, 05 May 2000, Bill Trost wrote:
> Ian Clarke writes:
>     I am still slightly confused as to why we need a Makefile - since
>     this seems to ignore one of the nice features of Java compilers -
>     namely that you can just give it a list of file masks and it will
>     compile anything that needs recompilation - simple but effective.
> 
> From what I've seen, build.sh and kbuild.sh simply go and rebuild
> *everything*, not just what needs rebuilding.  Simple but deathly
> slow...
> 
> _______________________________________________
> Freenet-dev mailing list
> Freenet-dev at lists.sourceforge.net
> http://lists.sourceforge.net/mailman/listinfo/freenet-dev
-- 

Oskar Sandberg

md98-osa at nada.kth.se

#!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)

_______________________________________________
Freenet-dev mailing list
Freenet-dev at lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/freenet-dev

Reply via email to