Gary Benson writes: > Andrew Haley wrote: > > Gary Benson writes: > > > Andrew Haley wrote: > > > > The way this traditionally works in UNIX is by using `make'. > > > > > > > > For example, to rebuild the mail database you simply go to > > > > /etc/mail and type > > > > > > > > make > > > > > > > > which does whatever is necessary. > > > > > > > > Why not do it this way with gcj's dependencies? Just go into > > > > /var/lib/gcj<blah> and run make? The makefile can then do > > > > everything that is necessary, using make's dependency analysis. > > > > > > That's fine for sendmail, where everything in /etc/mail is owned by > > > sendmail. GCJ can't know in advance what will be in /usr/lib/gcj, so > > > such a makefile would need to be edited or generated by something. > > > > I don't think so. All the makefile has to know is that the master > > db depends on *.db and *.so in some directory. > > How would it cope with file deletions? Use the directory as a dependency. Any deletions will cause the directory to be touched. ------------------------------------------------------------------------ bar: foo echo "update" touch bar ------------------------------------------------------------------------ $ mkdir foo $ touch foo/baz $ make echo "update" update touch bar $ make make: `bar' is up to date. $ rm foo/baz $ make echo "update" update touch bar Andrew.