On Tue, 8 May 2001, Ceki [iso-8859-1] Gülcü wrote:

> At 18:36 08.05.2001 +1000, you wrote:
> >At 08:31  8/5/01 +0200, Ceki Gülcü wrote:
> >>At 08:36 08.05.2001 +1000, you wrote:
> >>>At 06:09  7/5/01 +0200, Ceki Gülcü wrote:
> >>>>>Unfortunately half projects use "build" for (1) and half use it for
> >(2). My
> >>>>>recomendation would be to invent a new name for (1) that conflicts with no
> >>>>>existing project - perhaps "intermediate". For (2) I recomend "tools" as
> >>>>>that makes it very clear what is contained within that directory.
> >>>>
> >>>>I have asked this before but is there a need for an intermediary
> >>>directory? For example, to take an example I am familiar with, Tomcat 4.x,
> >>>a damn good project I might add, has a build/ directory and a dist/
> >>>directory where dist/ is a copy of build/. I do not know why Tomcat is
> >>>doing this but it is. Other projects are doing similar things. I am
> >>>obviously missing something...
> >>>
> >>>It is neccessary as a lot of things may be generated but not distributed in
> >>>final distribution. For instance in Avalon/Cornerstone we
> >>>* we create .class files (that are not distributed)
> >>>* pack the classes int jar files  (that are not distributed)
> >>>* pack these jar files into another deployment jar (is distributed)
> >>
> >>OK but have you considered <delete>? Cheers, Ceki
> >
> >And rebuild the whole thing every rebuild ? - no thanks - I don't see the
> >need to put in a hack to get around directory names. Directory should
> >integrate into build process - not the reverse.
> 
> If deleting is not an option, then one can selectively tar (or zip)
> files for the distro. In your example, you could exclude the .class
> files and the intermediary jar files when creating the distribution
> file(s). How does that sound? Ceki
> 

Ceki, could you expand on why you're objecting to the multistage build
process?  I'm with Peter on this one ... multi-stage builds save time for
the developers (because they do the minimum amount of work required), and
also make the "dist" target work better:

- They reuse what's already been done, with transformations as needed
  (so it runs faster, versus rebuilding everything again)

- They add any *extra* steps needed (create Javadocs, copy sources, etc.)
  that are appropriate for the binary distribution.

- Most fundamentally, they let the "shape" of the intermediate build
  directory tree be different from that of the binary distribution
  if that's appropriate to your project.

What is it that you believe we are missing?

Craig


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to