You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Mark Womack <mw...@bevocal.com> on 2001/08/18 01:13:02 UTC

[PATCH] taskdefs/optional/depend/Depend.java

Enclosed is a patch to the java class for the optional depend task,
Depend.java, based on the current version in cvs, 1.8.

Breaking patch: NO, supports existing usage.  But it does change the
dependency cache structure which no one should be bound to (according to the
documentation).

Purpose: This patch consolidates all of the dependency cache information
into a single file instead of storing it in an individual file for each
class.  This greatly decreases the amount of time required to read/maintain
the dependency information(at least on my system).  This single file is
stored in the the cache directory specified.  The format of the file is very
simple.  It stores the classname on one line with a special string
prepended.  Then the classes it is dependent on are then each printed on
following lines.

With the recent talk of using the depend task with modern compilers, I have
it a try.  But I was very concerned about the performance.  For our builds
it was adding over 15 seconds.  With this simple change it now takes 5
seconds.

Please review and consider this patch for the next version of the 1.4 beta.
If you have any questions, please contact me.

Thanks,
-Mark

Supercharge your telephone!
Write your VoiceXML Application for free at http://cafe.bevocal.com
BeVocal Cafe - Rated #1 VoiceXML development environment
and voice hosting service by CT Labs!





Re: [PATCH] taskdefs/optional/depend/Depend.java

Posted by Conor MacNeill <co...@cortexebusiness.com.au>.
Mark,

Thanks for that. I have committed it with two mods. I fixed a bug in the
cache reading code where the last dependency was not added to the map. I
added a cacheDirty flag so the cache is only written if the contents of the
map are changed.

BTW, in the future, please submit patches to ant-dev rather than ant-user.

Thanks
Conor


----- Original Message -----
From: "Mark Womack" <mw...@bevocal.com>
To: "Ant-User (E-mail)" <an...@jakarta.apache.org>
Sent: Saturday, August 18, 2001 9:13 AM
Subject: [PATCH] taskdefs/optional/depend/Depend.java


> Enclosed is a patch to the java class for the optional depend task,
> Depend.java, based on the current version in cvs, 1.8.
>
> Breaking patch: NO, supports existing usage.  But it does change the
> dependency cache structure which no one should be bound to (according to
the
> documentation).
>
> Purpose: This patch consolidates all of the dependency cache information
> into a single file instead of storing it in an individual file for each
> class.  This greatly decreases the amount of time required to
read/maintain
> the dependency information(at least on my system).  This single file is
> stored in the the cache directory specified.  The format of the file is
very
> simple.  It stores the classname on one line with a special string
> prepended.  Then the classes it is dependent on are then each printed on
> following lines.
>
> With the recent talk of using the depend task with modern compilers, I
have
> it a try.  But I was very concerned about the performance.  For our
builds
> it was adding over 15 seconds.  With this simple change it now takes 5
> seconds.
>
> Please review and consider this patch for the next version of the 1.4
beta.
> If you have any questions, please contact me.
>
> Thanks,
> -Mark
>
> Supercharge your telephone!
> Write your VoiceXML Application for free at http://cafe.bevocal.com
> BeVocal Cafe - Rated #1 VoiceXML development environment
> and voice hosting service by CT Labs!
>
>
>
>
>