----- Original Message -----
From: "Craig R. McClanahan" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, April 29, 2001 1:25 AM
Subject: Re: Common "ant dist" Behavior


>
>
> On Sun, 29 Apr 2001, Peter Donald wrote:
>
> > At 04:55  28/4/01 -0700, Craig R. McClanahan wrote:
> > >(1) "ant dist" Output Directory:
> > >
> > >    Suggestion:
> > >      ${commons.home}/${package}/build
> > >
> > >    Reasoning:
> > >    - All current packages (except Cactus) do this already
> >
> > I have said this before but ... a lot of projects outside commons use
> > "build" for an intermediate directory and "dist" for distribution
> > directory. Other projects (turbine et al) use build to contain build
> > related scripts etc. So why not flip to dist???
> >
>
> I would be happy with "dist" or "foo" or anything ... but trying to get
> this gang to change in unison is like swimming in molasses.  :-)
>

+1 for dist

> > >(2) Binary Distribution Contents
> > >
> > >    The "ant dist" target for a package should ensure that all of the
> > >    following contents are placed in the output directory:
> > >
> > >    Suggestion:
> > >      LICENSE                       Copy of Apache License
> > >      README                        README with dependencies, etc.
> > >      commons-xxxxx.jar             Package JAR (no version number)
> > >      javadoc/                      Package Javadocs
> >
> > how about docs/api and then any extra documentation required by
component
> > sits in docs/. This conforms to what a lot of projects do and also
matches
> > jdk.
> >
>
> Sounds reasonable -- as long as it is common and predictable.
>
> > >    Reasoning for "No Version Number":
> > >    - Allows build.xml files that use these JARs to define properties
> > >
(commons-beanutils.jar=${commons-beanutils.home}/commons-beanutils.jar)
> > >      without worrying about version numbers
> > >    - We're going to maintain API stability, right? :-)
> > >    - Versioning information should be included in the MANIFEST.MF
> > >      file inside the JAR anyway, so it's redundant in the filename
> >
> > I agree that no version number is nice while building from CVS but for
> > "real" releases it is very useful to be able to see versions of
different
> > components at a glance. Perhaps when creating a dist for public you can
set
> > a flag or some such to modify this. Usually this is done anyway (see
ant's
> > own build file for example).
> >
> > For instance in normal building circumstances ant builds a distribution
to
> > "dist/". Then when it hits "real" distribution mode it will build to
> > "jakarta-ant-1.4/". This is so that the correct directory is included in
> > zip etc.
> >

+1

>
> I agree with the version number being included in the name of the release
> distribution files (i.e. "jakarta-commons-beanutils-1.0.zip"), and the top
> level directory included in the distribution file (which would be
> "jakarta-commons-beanutils-1.0" in this case).  What I want to avoid is
> including the version number in the name of the JAR file itself -- that is
> what introduces fragility in build scripts that would depend on this
> package.  So, the name of the JAR file itself would be
> "commons-beanutils.jar", independent of which version you grabbed.
>
> > Cheers,
> >
> > Pete
> >
>
> Craig
>
>
>

Reply via email to