Browse Source

- make the sources of the individual ant jars also published into the maven repository

- make a javadoc jar publish with ant's main jar


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1095053 13f79535-47bb-0310-9956-ffa450edef68
master
Nicolas Lalevee 14 years ago
parent
commit
d6466e0fd7
3 changed files with 190 additions and 27 deletions
  1. +145
    -26
      build.xml
  2. +44
    -0
      release/ivy.xml
  3. +1
    -1
      release/upload.xml

+ 145
- 26
build.xml View File

@@ -79,6 +79,7 @@
<property name="bootstrap.dir" value="bootstrap"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="build.lib" value="${build.dir}/lib"/>
<property name="build.lib-src" value="${build.dir}/lib-src"/>
<property name="build.javadocs" value="${build.dir}/javadocs"/>
<property name="build.tests" value="${build.dir}/testcases"/>
<property name="build.tests.javadocs" value="${build.dir}/javadocs.test/"/>
@@ -291,6 +292,33 @@
<filename name="${ant.package}/launch/"/>
</selector>

<selector id="ant.core">
<not>
<or>
<selector refid="needs.antlr"/>
<selector refid="needs.apache-bcel"/>
<selector refid="needs.apache-bsf"/>
<selector refid="needs.apache-log4j"/>
<selector refid="needs.apache-oro"/>
<selector refid="needs.apache-regexp"/>
<selector refid="needs.apache-resolver"/>
<selector refid="needs.apache-xalan2"/>
<selector refid="needs.commons-logging"/>
<selector refid="needs.commons-net"/>
<selector refid="needs.jai"/>
<selector refid="needs.javamail"/>
<selector refid="needs.jdepend"/>
<selector refid="needs.jmf"/>
<selector refid="needs.jsch"/>
<selector refid="needs.junit"/>
<selector refid="needs.junit4"/>
<selector refid="needs.netrexx"/>
<selector refid="needs.swing"/>
<selector refid="ant.launcher"/>
</or>
</not>
</selector>

<patternset id="onlinetests">
<exclude name="**/GetTest.java" if="offline"/>
<exclude name="**/HttpTest.java" if="offline"/>
@@ -646,6 +674,10 @@
basedir="${build.classes}"
whenmanifestonly="fail">
<selector refid="ant.launcher"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
<manifest>
<attribute name="Main-Class" value="org.apache.tools.ant.launch.Launcher"/>
</manifest>
@@ -655,31 +687,8 @@
basedir="${build.classes}"
manifest="${manifest}"
whenmanifestonly="fail">
<not>
<or>
<!-- Verification: (cd dist/lib; for j in *.jar; do jar tf $j; done) | egrep -v '/$|META-INF/MANIFEST\.MF' | sort | uniq -d -->
<selector refid="needs.antlr"/>
<selector refid="needs.apache-bcel"/>
<selector refid="needs.apache-bsf"/>
<selector refid="needs.apache-log4j"/>
<selector refid="needs.apache-oro"/>
<selector refid="needs.apache-regexp"/>
<selector refid="needs.apache-resolver"/>
<selector refid="needs.apache-xalan2"/>
<selector refid="needs.commons-logging"/>
<selector refid="needs.commons-net"/>
<selector refid="needs.jai"/>
<selector refid="needs.javamail"/>
<selector refid="needs.jdepend"/>
<selector refid="needs.jmf"/>
<selector refid="needs.jsch"/>
<selector refid="needs.junit"/>
<selector refid="needs.junit4"/>
<selector refid="needs.netrexx"/>
<selector refid="needs.swing"/>
<selector refid="ant.launcher"/>
</or>
</not>
<!-- Verification: (cd dist/lib; for j in *.jar; do jar tf $j; done) | egrep -v '/$|META-INF/MANIFEST\.MF' | sort | uniq -d -->
<selector refid="ant.core"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
@@ -732,6 +741,10 @@
manifest="${manifest.tmp}"
whenmanifestonly="${optional.jars.whenmanifestonly}">
<selector refid="needs.@{dep}"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>
</sequential>
</macrodef>
@@ -770,6 +783,97 @@
<jar destfile="${build.lib}/${name}-testutil.jar"
basedir="${build.tests}">
<patternset refid="useful.tests"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>
</target>

<!--
===================================================================
Create the all of the Apache Ant source jars
===================================================================
-->
<target name="jars-sources" description="--> creates the Apache Ant source jars">
<mkdir dir="${build.lib-src}" />
<jar destfile="${build.lib-src}/${name}-launcher.jar"
basedir="${java.dir}"
whenmanifestonly="fail">
<selector refid="ant.launcher"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>

<jar destfile="${build.lib-src}/${name}.jar"
basedir="${java.dir}"
whenmanifestonly="fail">
<selector refid="ant.core"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>

<jar destfile="${build.lib-src}/${bootstrap.jar}"
basedir="${java.dir}"
whenmanifestonly="fail">
<include name="${ant.package}/Main.java"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>

<macrodef name="optional-src-jar">
<attribute name="dep"/>
<sequential>
<jar destfile="${build.lib-src}/${optional.jars.prefix}-@{dep}.jar"
basedir="${java.dir}"
whenmanifestonly="${optional.jars.whenmanifestonly}">
<selector refid="needs.@{dep}"/>
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>
</sequential>
</macrodef>

<optional-src-jar dep="apache-resolver"/>
<optional-src-jar dep="junit"/>
<optional-src-jar dep="junit4"/>
<optional-src-jar dep="apache-regexp"/>
<optional-src-jar dep="apache-oro"/>
<optional-src-jar dep="apache-bcel"/>
<optional-src-jar dep="apache-log4j"/>
<optional-src-jar dep="commons-logging"/>
<optional-src-jar dep="apache-bsf"/>
<optional-src-jar dep="javamail"/>
<optional-src-jar dep="netrexx"/>
<optional-src-jar dep="commons-net"/>
<optional-src-jar dep="antlr"/>
<optional-src-jar dep="jmf"/>
<optional-src-jar dep="jai"/>
<optional-src-jar dep="swing"/>
<optional-src-jar dep="jsch"/>
<optional-src-jar dep="jdepend"/>
<optional-src-jar dep="apache-xalan2"/>

</target>

<target name="test-jar-source"
description="--> creates the Apache Ant Test Utilities source jar">
<mkdir dir="${build.lib-src}" />
<jar destfile="${build.lib-src}/${name}-testutil.jar"
basedir="${java.dir}">
<patternset refid="useful.tests" />
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>
</target>

@@ -1054,7 +1158,7 @@
Create the binary distribution
===================================================================
-->
<target name="main_distribution"
<target name="main_distribution" depends="jars-sources,test-jar-source"
description="--> creates the zip and tar distributions">
<delete dir="${dist.base}"/>
<delete dir="${dist.name}"/>
@@ -1122,8 +1226,23 @@
<mapper type="regexp" from="ant(.*).pom" to="ant\1/${project.version}/ant\1-${project.version}.pom"/>
</mapper>
</copy>
<copy todir="${java-repository.dir}">
<fileset dir="${build.lib-src}">
<include name="ant*.jar"/>
</fileset>
<mapper type="regexp" from="ant(.*).jar" to="ant\1/${project.version}/ant\1-${project.version}-sources.jar"/>
</copy>
<jar destfile="${java-repository.dir}/ant/${project.version}/ant-${project.version}-javadocs.jar"
basedir="${build.javadocs}">
<metainf dir="${build.dir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.txt"/>
</metainf>
</jar>
<checksums-mvn>
<fileset dir="${java-repository.dir}" includes="**/*${project.version}.jar"/>
<fileset dir="${java-repository.dir}" includes="**/*${project.version}-sources.jar"/>
<fileset dir="${java-repository.dir}" includes="**/*${project.version}-javadocs.jar"/>
<fileset dir="${java-repository.dir}" includes="**/*${project.version}.pom"/>
</checksums-mvn>



+ 44
- 0
release/ivy.xml View File

@@ -28,86 +28,130 @@
<artifact name="ant" type="pom.asc" ext="pom.asc"/>
<artifact name="ant" type="jar" ext="jar"/>
<artifact name="ant" type="jar.asc" ext="jar.asc"/>
<artifact name="ant" type="sources" ext="jar" classifier="sources" />
<artifact name="ant" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant" type="javadocs" ext="jar" classifier="javadocs" />
<artifact name="ant" type="javadocs.asc" ext="jar.asc" classifier="javadocs" />
<artifact name="ant-antlr" type="pom" ext="pom"/>
<artifact name="ant-antlr" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-antlr" type="jar" ext="jar"/>
<artifact name="ant-antlr" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-antlr" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-antlr" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-bcel" type="pom" ext="pom"/>
<artifact name="ant-apache-bcel" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-bcel" type="jar" ext="jar"/>
<artifact name="ant-apache-bcel" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-bcel" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-bcel" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-bsf" type="pom" ext="pom"/>
<artifact name="ant-apache-bsf" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-bsf" type="jar" ext="jar"/>
<artifact name="ant-apache-bsf" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-bsf" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-bsf" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-log4j" type="pom" ext="pom"/>
<artifact name="ant-apache-log4j" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-log4j" type="jar" ext="jar"/>
<artifact name="ant-apache-log4j" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-log4j" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-log4j" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-oro" type="pom" ext="pom"/>
<artifact name="ant-apache-oro" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-oro" type="jar" ext="jar"/>
<artifact name="ant-apache-oro" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-oro" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-oro" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-regexp" type="pom" ext="pom"/>
<artifact name="ant-apache-regexp" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-regexp" type="jar" ext="jar"/>
<artifact name="ant-apache-regexp" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-regexp" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-regexp" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-resolver" type="pom" ext="pom"/>
<artifact name="ant-apache-resolver" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-resolver" type="jar" ext="jar"/>
<artifact name="ant-apache-resolver" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-resolver" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-resolver" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-apache-xalan2" type="pom" ext="pom"/>
<artifact name="ant-apache-xalan2" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-apache-xalan2" type="jar" ext="jar"/>
<artifact name="ant-apache-xalan2" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-apache-xalan2" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-apache-xalan2" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-commons-logging" type="pom" ext="pom"/>
<artifact name="ant-commons-logging" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-commons-logging" type="jar" ext="jar"/>
<artifact name="ant-commons-logging" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-commons-logging" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-commons-logging" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-commons-net" type="pom" ext="pom"/>
<artifact name="ant-commons-net" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-commons-net" type="jar" ext="jar"/>
<artifact name="ant-commons-net" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-commons-net" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-commons-net" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-jai" type="pom" ext="pom"/>
<artifact name="ant-jai" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-jai" type="jar" ext="jar"/>
<artifact name="ant-jai" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-jai" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-jai" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-javamail" type="pom" ext="pom"/>
<artifact name="ant-javamail" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-javamail" type="jar" ext="jar"/>
<artifact name="ant-javamail" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-javamail" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-javamail" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-jdepend" type="pom" ext="pom"/>
<artifact name="ant-jdepend" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-jdepend" type="jar" ext="jar"/>
<artifact name="ant-jdepend" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-jdepend" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-jdepend" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-jmf" type="pom" ext="pom"/>
<artifact name="ant-jmf" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-jmf" type="jar" ext="jar"/>
<artifact name="ant-jmf" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-jmf" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-jmf" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-jsch" type="pom" ext="pom"/>
<artifact name="ant-jsch" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-jsch" type="jar" ext="jar"/>
<artifact name="ant-jsch" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-jsch" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-jsch" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-junit" type="pom" ext="pom"/>
<artifact name="ant-junit" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-junit" type="jar" ext="jar"/>
<artifact name="ant-junit" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-junit" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-junit" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-launcher" type="pom" ext="pom"/>
<artifact name="ant-launcher" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-launcher" type="jar" ext="jar"/>
<artifact name="ant-launcher" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-launcher" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-launcher" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-netrexx" type="pom" ext="pom"/>
<artifact name="ant-netrexx" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-netrexx" type="jar" ext="jar"/>
<artifact name="ant-netrexx" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-netrexx" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-netrexx" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-swing" type="pom" ext="pom"/>
<artifact name="ant-swing" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-swing" type="jar" ext="jar"/>
<artifact name="ant-swing" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-swing" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-swing" type="sources.asc" ext="jar.asc" classifier="sources" />
<artifact name="ant-testutil" type="pom" ext="pom"/>
<artifact name="ant-testutil" type="pom.asc" ext="pom.asc"/>
<artifact name="ant-testutil" type="jar" ext="jar"/>
<artifact name="ant-testutil" type="jar.asc" ext="jar.asc"/>
<artifact name="ant-testutil" type="sources" ext="jar" classifier="sources" />
<artifact name="ant-testutil" type="sources.asc" ext="jar.asc" classifier="sources" />
</publications>
<dependencies/>
</ivy-module>

+ 1
- 1
release/upload.xml View File

@@ -22,5 +22,5 @@
<ivy:resolve file="ivy.xml"/>
<ivy:retrieve/>
<ivy:deliver/>
<ivy:publish publishivy="false" artifactspattern="${basedir}/../java-repository/[organisation]/[module]/[artifact]/[revision]/[artifact]-[revision].[ext]" resolver="nexus"/>
<ivy:publish publishivy="false" artifactspattern="${basedir}/../java-repository/[organisation]/[module]/[artifact]/[revision]/[artifact]-[revision](-[classifier]).[ext]" resolver="nexus"/>
</project>

Loading…
Cancel
Save