db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-4841) Improve projecthelp for the top level Derby build script
Date Wed, 13 Oct 2010 13:48:33 GMT

    [ https://issues.apache.org/jira/browse/DERBY-4841?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12920552#action_12920552

Rick Hillegas commented on DERBY-4841:

Thanks for the additional analysis, Dag and Knut. Although ant lets you put multiple targets
on the command line, the resulting behavior is not clear to me. For instance, ant handles
property overrides in a very idiosyncratic way and off the top of my head I don't know how
property overriding behaves when you put multiple targets on the command line. This is all
I could find in the ant documentation (from the "Command Line" section of the ant manual):

"It is also possible to specify one or more targets that should be executed. When omitted,
the target that is specified in the default attribute of the project tag is used."

>From what you are saying, it seems that

ant foo bar

is not in general equivalent to

ant foo
ant bar

Perhaps our documentation will be less brittle (and more accurate) if we always phrase it
in terms of separate commands rather than composite ones. That, at least, is the approach
taken in BUILDING.html.

I have logged a new issue (DERBY-4845) to track the broken dependencies in our build scripts.

> Improve projecthelp for the top level Derby build script
> --------------------------------------------------------
>                 Key: DERBY-4841
>                 URL: https://issues.apache.org/jira/browse/DERBY-4841
>             Project: Derby
>          Issue Type: Improvement
>          Components: Build tools
>    Affects Versions:
>            Reporter: Rick Hillegas
>         Attachments: derby-4841-01-aa-ricksPicks.diff
> Ant scripts are supposed to be self-describing. The following command is supposed to
describe the public targets in the current directory:
>     ant -projecthelp
> Here is the output of this command for the top level build script today:
> Main targets:
>  checkCompilerLevel     Make sure compiler level is Java 5 level or higher.
>  class_size_catalog     create the class size catalog -- a java file
>  createBranch           Create a new branch (both docs and code)
>  parsers                Build the parsers
>  release                Build the release distributions
>  setCompilerProperties  Set the ant variables which identify the compiler classpaths.
Remove the autosetProps logic when this target becomes mandatory.
>  setInitialProperties   Set the initial properties for this build script. This duplicates
the property setting block in setCompilerProperties. Once we make setCompilerProperties mandatory,
this target should be removed.
>  state                  Build SanityState.java
> Default target: buildsource
> That does not seem like the list of public targets to me. This JIRA can be used as a
place to anchor work which we do on improving the user documentation for our top level build
> I propose to make some changes to build.xml. Others are welcome to pile on. Here's how
it works:
> 1) The public targets are the ones which have "description" attributes.
> 2) So to make a target public, fill in a "description" attribute for it.
> 3) And to hide a target, move its "description" text into an introductory comment bracketed
by "<!--" and "-->"

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message