I wrote an Ant script that attempts to mimic the platform specific
script used to prepare the current candidates. The script also can
compare the candidate against the locally prepared source jars to
determine any inconsistencies.
The script is available at http://people.apache.org/~carnold/commons_repackage.xml
. Comparison between candidate and locally prepared versions requires
diff and grep on the path.
To build sources jars:
$ ant -f commons_repackage.xml prepare-all
To compare candidate source jars with locally prepared source jars
$ ant -f commons_repackage.xml check-all
The -f commons_repackage.xml would be unnecessary if you renamed
commons_repackage.xml to build.xml.
A normal comparison in the log will look like:
check:
[delete] Deleting: /Users/curta/ls-svn/commons/expanded/prepared/
common-beanutils-1.6-sources/META-INF/MANIFEST.MF
[delete] Deleting: /Users/curta/ls-svn/commons/expanded/candidate/
commons-beanutils-1.6-sources/META-INF/MANIFEST.MF
[echo] Checking commons-beanutils-1.6:
[echo] NOTICE: missing
[echo] LICENSE: LICENSE.txt
[exec] * The Apache Software License, Version 1.1
If there are any differences between the locally prepared and
candidate jars, the output of the diff command will appear after the
"Checking commons..." line and before the "[echo] NOTICE:" line.
Observed differences:
commons-betwixt-0.5:
commons-httpclient-3.1:
commons-jxpath-1.2:
These jars have LICENSE.txt, etc in the META-INF directory. Not that
that is a bad place to be, it just looks like these might have been
prepared manually or by a slightly different script than the other
source jars.
commons-math-1.1:
The diff reports that the LICENSE.txt, NOTICE.txt, and RELEASE-
NOTES.txt and license-header.txt are different, but it may just be
different line feeds. However, even if it is only line feeds, they
should be consistent.
commons-pool-1.3:
Possibly line feeds too, but also affects .java files.
commons-primitives-1.0:
Likely line feeds, just LICENSE.txt
The script was written to mimic the current candidate builds.
However, it should be straightforward to modify to add missing NOTICE
files and place LICENSE and NOTICE in META-INF if desired.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]