consistent indent (4-spaces)
Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo Commit: http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/9edca730 Tree: http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/9edca730 Diff: http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/9edca730 Branch: refs/heads/xooki2asciidoc Commit: 9edca730486cafc5817abc8167cfd27f158042f2 Parents: f637753 Author: Jan Matèrne <[email protected]> Authored: Tue May 16 21:43:41 2017 +0200 Committer: Jan Matèrne <[email protected]> Committed: Tue May 16 21:43:41 2017 +0200 ---------------------------------------------------------------------- build-release.xml | 624 ++++++++++++++++++++++++------------------------- build.xml | 280 +++++++++++----------- ivy.xml | 90 +++---- 3 files changed, 502 insertions(+), 492 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/9edca730/build-release.xml ---------------------------------------------------------------------- diff --git a/build-release.xml b/build-release.xml index 0fa812a..752e8d2 100644 --- a/build-release.xml +++ b/build-release.xml @@ -17,102 +17,102 @@ under the License. --> <project name="IvyRelease" default="snapshot" - xmlns:ivy="antlib:org.apache.ivy.ant" + xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ivy2="antlib:org.apache.ivy.ant_2" - xmlns:xooki="antlib:xooki" - xmlns:openpgp="antlib:org.apache.commons.openpgp.ant"> - <import file="build.xml"/> - - <macrodef name="run-tutorial"> - <attribute name="antfile" /> - <attribute name="output" /> - <attribute name="target" default="" /> - <attribute name="failonerror" default="true" /> - <sequential> - <echo>Running @{antfile} @{target} > @{output}</echo> - + xmlns:xooki="antlib:xooki" + xmlns:openpgp="antlib:org.apache.commons.openpgp.ant"> + <import file="build.xml"/> + + <macrodef name="run-tutorial"> + <attribute name="antfile" /> + <attribute name="output" /> + <attribute name="target" default="" /> + <attribute name="failonerror" default="true" /> + <sequential> + <echo>Running @{antfile} @{target} > @{output}</echo> + <local name="antfile.dir" /> <dirname property="antfile.dir" file="@{antfile}" /> - - <local name="antfile.name" /> - <basename property="antfile.name" file="@{antfile}" /> - - <echo file="@{output}">[ivy@apache:${antfile.dir}]$ ant -f ${antfile.name} @{target}${line.separator}</echo> - <java classname="org.apache.tools.ant.launch.Launcher" - fork="true" - failonerror="@{failonerror}" - logerror="true" - append="true" - output="@{output}"> - <classpath> - <fileset file="${artifacts.build.dir}/jars/${final.name}" /> - - <!-- - We need to set the classpath like this, otherwise the invoked - build scripts are not capable of compiling sources ??? - --> - <path path="${java.class.path}" /> - </classpath> - <sysproperty key="ivy.cache.dir" value="${tutorial.cache}" /> - <sysproperty key="ivy.local.default.root" value="${tutorial.local-repo}" /> + + <local name="antfile.name" /> + <basename property="antfile.name" file="@{antfile}" /> + + <echo file="@{output}">[ivy@apache:${antfile.dir}]$ ant -f ${antfile.name} @{target}${line.separator}</echo> + <java classname="org.apache.tools.ant.launch.Launcher" + fork="true" + failonerror="@{failonerror}" + logerror="true" + append="true" + output="@{output}"> + <classpath> + <fileset file="${artifacts.build.dir}/jars/${final.name}" /> + + <!-- + We need to set the classpath like this, otherwise the invoked + build scripts are not capable of compiling sources ??? + --> + <path path="${java.class.path}" /> + </classpath> + <sysproperty key="ivy.cache.dir" value="${tutorial.cache}" /> + <sysproperty key="ivy.local.default.root" value="${tutorial.local-repo}" /> <sysproperty key="ivy.cache.ttl.default" value="1s" /> - <sysproperty key="skip.download" value="true" /> - <arg line="-f @{antfile}" /> - <arg line="@{target}" /> - </java> - </sequential> - </macrodef> - - <target name="generate-tutorial-output" depends="jar, generate-doc-init"> + <sysproperty key="skip.download" value="true" /> + <arg line="-f @{antfile}" /> + <arg line="@{target}" /> + </java> + </sequential> + </macrodef> + + <target name="generate-tutorial-output" depends="jar, generate-doc-init"> <property name="output.dir" value="${build.dir}/output" /> - <delete dir="${output.dir}" /> + <delete dir="${output.dir}" /> <mkdir dir="${output.dir}" /> - - <!-- create a copy of the tutorials so we can easily get rid of the generated files --> - <property name="tutorial.src.dir" value="${build.dir}/examples" /> - <delete dir="${tutorial.src.dir}" /> - <mkdir dir="${tutorial.src.dir}" /> - <copy todir="${tutorial.src.dir}"> - <fileset dir="src/example" /> - </copy> - - <!-- create a cache and local-repository for the tutorials --> - <property name="tutorial.build.dir" value="${build.dir}/tutorial" /> - <property name="tutorial.cache" value="${tutorial.build.dir}/cache" /> - <property name="tutorial.local-repo" value="${tutorial.build.dir}/local" /> - - <!-- go-ivy : not logged, but run in order to check if it still run --> - <run-tutorial antfile="${tutorial.src.dir}/go-ivy/build.xml" output="${output.dir}/dummy.txt" /> + + <!-- create a copy of the tutorials so we can easily get rid of the generated files --> + <property name="tutorial.src.dir" value="${build.dir}/examples" /> + <delete dir="${tutorial.src.dir}" /> + <mkdir dir="${tutorial.src.dir}" /> + <copy todir="${tutorial.src.dir}"> + <fileset dir="src/example" /> + </copy> + + <!-- create a cache and local-repository for the tutorials --> + <property name="tutorial.build.dir" value="${build.dir}/tutorial" /> + <property name="tutorial.cache" value="${tutorial.build.dir}/cache" /> + <property name="tutorial.local-repo" value="${tutorial.build.dir}/local" /> + + <!-- go-ivy : not logged, but run in order to check if it still run --> + <run-tutorial antfile="${tutorial.src.dir}/go-ivy/build.xml" output="${output.dir}/dummy.txt" /> <delete file="${output.dir}/dummy.txt" /> <delete dir="${tutorial.build.dir}" /> - + <!-- hello-ivy : Quick Start - start.html --> <run-tutorial antfile="${tutorial.src.dir}/hello-ivy/build.xml" output="${output.dir}/hello-ivy-1.txt" /> <run-tutorial antfile="${tutorial.src.dir}/hello-ivy/build.xml" output="${output.dir}/hello-ivy-2.txt" /> <delete dir="${tutorial.build.dir}" /> - - <!-- multiple resolvers - multiple.html --> + + <!-- multiple resolvers - multiple.html --> <run-tutorial antfile="${tutorial.src.dir}/chained-resolvers/chainedresolvers-project/build.xml" output="${output.dir}/chained-resolvers.txt" /> <delete dir="${tutorial.build.dir}" /> - <!-- dual - dual.html --> + <!-- dual - dual.html --> <run-tutorial antfile="${tutorial.src.dir}/dual/project/build.xml" output="${output.dir}/dual.txt" /> <delete dir="${tutorial.build.dir}" /> - <!-- Project dependencies - multi-project.html --> + <!-- Project dependencies - multi-project.html --> <run-tutorial antfile="${tutorial.src.dir}/dependence/dependee/build.xml" target="publish" output="${output.dir}/dependence-standalone.txt" /> <run-tutorial antfile="${tutorial.src.dir}/dependence/depender/build.xml" output="${output.dir}/dependence-depending.txt" /> <run-tutorial antfile="${tutorial.src.dir}/dependence/dependee/build.xml" target="publish" output="${output.dir}/dependence-standalone-2.txt" /> <run-tutorial antfile="${tutorial.src.dir}/dependence/depender/build.xml" output="${output.dir}/dependence-depending-2.txt" /> <delete dir="${tutorial.build.dir}" /> - <!-- configuration - Using Ivy Configuration - conf.html --> + <!-- configuration - Using Ivy Configuration - conf.html --> <run-tutorial antfile="${tutorial.src.dir}/configurations/multi-projects/filter-framework/build.xml" output="${output.dir}/configurations-lib.txt" /> <run-tutorial antfile="${tutorial.src.dir}/configurations/multi-projects/myapp/build.xml" output="${output.dir}/configurations-runcc.txt" /> <run-tutorial antfile="${tutorial.src.dir}/configurations/multi-projects/myapp/build.xml" target="run-hm" output="${output.dir}/configurations-runhm.txt" /> <delete dir="${tutorial.build.dir}" /> - - <!--Building a repository - basic.html --> + + <!--Building a repository - basic.html --> <run-tutorial antfile="${tutorial.src.dir}/build-a-ivy-repository/build.xml" target="maven2" output="${output.dir}/install.txt" /> <pathconvert property="myrepository.content" pathsep="${line.separator}"> <fileset dir="${tutorial.src.dir}/build-a-ivy-repository/myrepository/no-namespace" /> @@ -128,26 +128,26 @@ <echo file="${output.dir}/myrepository-content-deps.txt" append="true">${myrepository.content.deps}</echo> <delete dir="${tutorial.build.dir}" /> - <!--Building a repository - advanced.html --> + <!--Building a repository - advanced.html --> <run-tutorial antfile="${tutorial.src.dir}/build-a-ivy-repository/build.xml" target="maven2-namespace" output="${output.dir}/install-namespace.txt" /> <pathconvert property="myrepository.content.namespace" pathsep="${line.separator}"> <fileset dir="${tutorial.src.dir}/build-a-ivy-repository/myrepository/advanced" /> </pathconvert> - <echo file="${output.dir}/myrepository-content-namespace.txt">$ find ${tutorial.src.dir}/build-a-ivy-repository/myrepository/advanced -type f -print${line.separator}</echo> + <echo file="${output.dir}/myrepository-content-namespace.txt">$ find ${tutorial.src.dir}/build-a-ivy-repository/myrepository/advanced -type f -print${line.separator}</echo> <echo file="${output.dir}/myrepository-content-namespace.txt" append="true">${myrepository.content.namespace}</echo> <delete dir="${tutorial.build.dir}" /> - - <!-- multi-project - multiproject.html --> + + <!-- multi-project - multiproject.html --> <run-tutorial antfile="${tutorial.src.dir}/multi-project/build.xml" target="-p" output="${output.dir}/multi-project-general-antp.txt" /> <run-tutorial antfile="${tutorial.src.dir}/multi-project/projects/find/build.xml" target="-p" output="${output.dir}/multi-project-find-antp.txt" /> <run-tutorial antfile="${tutorial.src.dir}/multi-project/build.xml" target="publish-all" output="${output.dir}/multi-project-general-publishall.txt" /> <delete dir="${tutorial.build.dir}" /> - <!-- Correct the location of the examples to a dummy '/ivy' location --> - <pathconvert property="tutorial.root" dirsep="/"> - <identitymapper/> - <path location="${tutorial.src.dir}"/> - </pathconvert> + <!-- Correct the location of the examples to a dummy '/ivy' location --> + <pathconvert property="tutorial.root" dirsep="/"> + <identitymapper/> + <path location="${tutorial.src.dir}"/> + </pathconvert> <pathconvert property="tutorial.local" dirsep="/"> <identitymapper/> <path location="${tutorial.local-repo}"/> @@ -158,18 +158,18 @@ </pathconvert> <replace dir="${output.dir}" token="\" value="/" /> - <replace dir="${output.dir}" token="${tutorial.root}" value="/ivy" /> + <replace dir="${output.dir}" token="${tutorial.root}" value="/ivy" /> <replace dir="${output.dir}" token="${tutorial.local}" value="/home/ivy/.ivy2/local" /> <replace dir="${output.dir}" token="${ivy.jar.location}" value="//home/ivy/ivy.jar" /> - <replace dir="${output.dir}" token="-f build.xml " value="" /> - <replace dir="${output.dir}" token="${ivy.revision}" value="working@apache" /> - - <copy todir="${doc.tmp.dir}/tutorial/log"> - <fileset dir="${output.dir}" /> - </copy> - </target> - - <target name="generate-doc-init" depends="release-version"> + <replace dir="${output.dir}" token="-f build.xml " value="" /> + <replace dir="${output.dir}" token="${ivy.revision}" value="working@apache" /> + + <copy todir="${doc.tmp.dir}/tutorial/log"> + <fileset dir="${output.dir}" /> + </copy> + </target> + + <target name="generate-doc-init" depends="release-version"> <!-- copy documentation to temp dir to replace version tokens --> <property name="doc.tmp.dir" value="${build.dir}/tempdoc" /> <mkdir dir="${doc.tmp.dir}" /> @@ -178,10 +178,10 @@ <filterset> <filter token="version" value="${build.version}"/> </filterset> - </copy> - </target> - - <target name="generate-doc" depends="generate-doc-init, generate-tutorial-output"> + </copy> + </target> + + <target name="generate-doc" depends="generate-doc-init, generate-tutorial-output"> <copy todir="${doc.build.dir}"> <fileset dir="${doc.src.dir}" includes="images/**,style/**,samples/**,js/**,ivy.xsd" /> <fileset dir="${doc.tmp.dir}" includes="tutorial/log/multi-project-general-publishall.txt" /> @@ -204,177 +204,177 @@ </xooki:generate> <!-- generate print-friendly doc --> - <!-- modify the basedir because othwise xooki.js will not be found! --> + <!-- modify the basedir because othwise xooki.js will not be found! --> <ant antfile="../build-release.xml" target="generate-print-doc" dir="doc" /> - </target> - - <target name="generate-print-doc"> + </target> + + <target name="generate-print-doc"> <!-- requires java 6 jdk in path and Apache Ant 1.7 --> <taskdef uri="antlib:xooki" file="${doc.src.dir}/xooki/antlib.xml" /> - <xooki:print src="${doc.tmp.dir}/index.html" + <xooki:print src="${doc.tmp.dir}/index.html" dest="${doc.build.dir}/book.html" xookidir="${doc.src.dir}/xooki" /> - </target> - - <target name="all-doc" depends="javadoc, generate-doc" /> - - <target name="init-snapshot" depends="default-version"> - <property name="snapshot.full.name" value="apache-ivy-${build.version}" /> - </target> - - <target name="snapshot-metadata" depends="init-snapshot, resolve"> - <mkdir dir="${artifacts.build.dir}"/> - <ivy:deliver - deliverpattern="${artifacts.build.dir}/ivy.xml" - pubrevision="${build.version}" - pubdate="${pubdate}" - status="${status}"/> - </target> - - <target name="snapshot-src" depends="init-snapshot"> - <delete dir="${build.dir}/snapshot-src" failonerror="false" /> - <exec executable="git" failonerror="true"> - <arg line="clone ${basedir} ${build.dir}/snapshot-src" /> - </exec> - <exec dir="${build.dir}/snapshot-src" executable="git" failonerror="true"> - <arg line="clean -d -x -f" /> - </exec> - <mkdir dir="${distrib.dir}/dist/${build.version}"/> - <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.zip"> - <zipfileset dir="${build.dir}/snapshot-src" prefix="${snapshot.full.name}" /> - </zip> - <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.tar.gz" - compression="gzip" longfile="gnu"> - <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.zip"/> - </tar> - </target> - - <target name="snapshot-bin-without-dependencies" depends="snapshot-metadata, jar, all-doc"> - <mkdir dir="${distrib.dir}/dist/${build.version}"/> - <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.zip"> - <zipfileset dir="${doc.build.dir}" prefix="${snapshot.full.name}/doc" excludes="**/reports/coverage/**,**/reports/test/**"/> - <zipfileset dir="${basedir}/src/example" prefix="${snapshot.full.name}/src/example"/> - <zipfileset dir="${basedir}" includes="NOTICE" fullpath="${snapshot.full.name}/NOTICE"/> - <zipfileset dir="${basedir}" includes="README" prefix="${snapshot.full.name}"/> - <zipfileset dir="${basedir}" includes="LICENSE*" prefix="${snapshot.full.name}"/> - <zipfileset dir="${basedir}" includes="CHANGES.txt" fullpath="${snapshot.full.name}/CHANGES.txt"/> - <zipfileset dir="${basedir}" includes="RELEASE_NOTES" fullpath="${snapshot.full.name}/RELEASE_NOTES"/> - <zipfileset dir="${src.dir}/org/apache/ivy/plugins/parser/xml" includes="ivy.xsd" fullpath="${snapshot.full.name}/ivy.xsd"/> - <zipfileset dir="${artifacts.build.dir}" includes="ivy.xml" fullpath="${snapshot.full.name}/ivy.xml"/> - <zipfileset dir="${basedir}" includes="build-for-bin-distrib.xml" fullpath="${snapshot.full.name}/build.xml"/> - - <zipfileset dir="${artifacts.build.dir}/jars" includes="${final.name}" fullpath="${snapshot.full.name}/ivy-${build.version}.jar"/> - </zip> - <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.tar.gz" - compression="gzip" longfile="gnu"> - <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.zip"/> - </tar> - </target> - - <target name="snapshot-bin-with-dependencies" depends="snapshot-metadata, jar, all-doc"> - <mkdir dir="${distrib.dir}/dist/${build.version}"/> - <delete dir="${build.dir}/lib" /> - <ivy:retrieve conf="default" pattern="${build.dir}/lib/[artifact]-[revision].[ext]" /> - <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.zip"> - <zipfileset dir="${doc.build.dir}" prefix="${snapshot.full.name}/doc" excludes="**/reports/coverage/**,**/reports/test/**"/> - <zipfileset dir="${basedir}/src/example" prefix="${snapshot.full.name}/src/example"/> - <zipfileset dir="${basedir}" includes="NOTICE" fullpath="${snapshot.full.name}/NOTICE"/> - <zipfileset dir="${basedir}" includes="README" prefix="${snapshot.full.name}"/> - <zipfileset dir="${basedir}" includes="LICENSE*" prefix="${snapshot.full.name}"/> - <zipfileset dir="${basedir}" includes="CHANGES.txt" fullpath="${snapshot.full.name}/CHANGES.txt"/> - <zipfileset dir="${basedir}" includes="RELEASE_NOTES" fullpath="${snapshot.full.name}/RELEASE_NOTES"/> - <zipfileset dir="${src.dir}/org/apache/ivy/plugins/parser/xml" includes="ivy.xsd" fullpath="${snapshot.full.name}/ivy.xsd"/> - <zipfileset dir="${artifacts.build.dir}" includes="ivy.xml" fullpath="${snapshot.full.name}/ivy.xml"/> - - <zipfileset dir="${artifacts.build.dir}/jars" includes="${final.name}" fullpath="${snapshot.full.name}/ivy-${build.version}.jar"/> - - <zipfileset dir="${build.dir}/lib" prefix="${snapshot.full.name}/lib" excludes="ant-*.jar,bcpg-*.jar,bcprov*.jar" /> - </zip> - <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.tar.gz" - compression="gzip" longfile="gnu"> - <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.zip"/> - </tar> - </target> - - <target name="snapshot-bin" - depends="snapshot-bin-with-dependencies, snapshot-bin-without-dependencies" /> - - <target name="release-xsd" depends="init-snapshot"> - <!-- copies current ivy xml schema to doc source, so that it will be available from web site --> - <copy file="${src.dir}/org/apache/ivy/plugins/parser/xml/ivy.xsd" todir="${doc.src.dir}" /> - </target> - - - <target name="snapshot-maven2" depends="init-snapshot, snapshot-metadata, jar, sources, javadoc"> - <property name="m2.distrib.dir" value="${distrib.dir}/maven2/${build.version}" /> - <ivy:makepom ivyfile="${artifacts.build.dir}/ivy.xml" - pomfile="${m2.distrib.dir}/ivy-${build.version}.pom" - templatefile="${basedir}/src/etc/makepom/pom.template"> - <mapping conf="core" scope="compile"/> - <mapping conf="test" scope="test"/> - </ivy:makepom> - <copy file="${artifacts.build.dir}/jars/${final.name}" - tofile="${m2.distrib.dir}/ivy-${build.version}.jar" /> - <!-- jar javadocs --> - <jar destfile="${m2.distrib.dir}/ivy-${build.version}-javadoc.jar"> - <fileset dir="${javadoc.build.dir}" /> - </jar> - <!-- copy sources jar --> - <copy file="${artifacts.build.dir}/sources/${final.name}" - tofile="${m2.distrib.dir}/ivy-${build.version}-sources.jar" /> - - <checksum algorithm="md5"> - <fileset dir="${m2.distrib.dir}"> - <include name="*.pom"/> - <include name="*.jar"/> - </fileset> - </checksum> - <checksum algorithm="sha1"> - <fileset dir="${m2.distrib.dir}"> - <include name="*.pom"/> - <include name="*.jar"/> - </fileset> - </checksum> - </target> - - - <target name="snapshot-checksums"> - <checksum algorithm="md5"> - <fileset dir="${distrib.dir}/dist/${build.version}"> - <include name="*.pom"/> - <include name="*.jar"/> - <include name="*.zip"/> - <include name="*.gz"/> - </fileset> - </checksum> - <checksum algorithm="sha"> - <fileset dir="${distrib.dir}/dist/${build.version}"> - <include name="*.pom"/> - <include name="*.jar"/> - <include name="*.zip"/> - <include name="*.gz"/> - </fileset> - </checksum> - </target> - - <target name="snapshot-version"> - <property name="version.prefix" value="${target.ivy.version}-dev-"/> - </target> - - <target name="release-version"> - <property name="build.version" value="${target.ivy.version}" /> - <echo>Setting version to ${build.version}</echo> - <condition property="status" value="release"> - <matches pattern="^\d+\.\d+\.\d+$" string="${build.version}"/> - </condition> - <condition property="status" value="milestone"> - <matches pattern="^\d+\.\d+\.\d+-(alpha|beta|rc)\d+$" string="${build.version}"/> - </condition> - <property name="status" value="integration" /> - <echo>Setting status to ${status}</echo> - </target> - - <target name="sign" depends="init-ivy"> + </target> + + <target name="all-doc" depends="javadoc, generate-doc" /> + + <target name="init-snapshot" depends="default-version"> + <property name="snapshot.full.name" value="apache-ivy-${build.version}" /> + </target> + + <target name="snapshot-metadata" depends="init-snapshot, resolve"> + <mkdir dir="${artifacts.build.dir}"/> + <ivy:deliver + deliverpattern="${artifacts.build.dir}/ivy.xml" + pubrevision="${build.version}" + pubdate="${pubdate}" + status="${status}"/> + </target> + + <target name="snapshot-src" depends="init-snapshot"> + <delete dir="${build.dir}/snapshot-src" failonerror="false" /> + <exec executable="git" failonerror="true"> + <arg line="clone ${basedir} ${build.dir}/snapshot-src" /> + </exec> + <exec dir="${build.dir}/snapshot-src" executable="git" failonerror="true"> + <arg line="clean -d -x -f" /> + </exec> + <mkdir dir="${distrib.dir}/dist/${build.version}"/> + <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.zip"> + <zipfileset dir="${build.dir}/snapshot-src" prefix="${snapshot.full.name}" /> + </zip> + <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.tar.gz" + compression="gzip" longfile="gnu"> + <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-src.zip"/> + </tar> + </target> + + <target name="snapshot-bin-without-dependencies" depends="snapshot-metadata, jar, all-doc"> + <mkdir dir="${distrib.dir}/dist/${build.version}"/> + <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.zip"> + <zipfileset dir="${doc.build.dir}" prefix="${snapshot.full.name}/doc" excludes="**/reports/coverage/**,**/reports/test/**"/> + <zipfileset dir="${basedir}/src/example" prefix="${snapshot.full.name}/src/example"/> + <zipfileset dir="${basedir}" includes="NOTICE" fullpath="${snapshot.full.name}/NOTICE"/> + <zipfileset dir="${basedir}" includes="README" prefix="${snapshot.full.name}"/> + <zipfileset dir="${basedir}" includes="LICENSE*" prefix="${snapshot.full.name}"/> + <zipfileset dir="${basedir}" includes="CHANGES.txt" fullpath="${snapshot.full.name}/CHANGES.txt"/> + <zipfileset dir="${basedir}" includes="RELEASE_NOTES" fullpath="${snapshot.full.name}/RELEASE_NOTES"/> + <zipfileset dir="${src.dir}/org/apache/ivy/plugins/parser/xml" includes="ivy.xsd" fullpath="${snapshot.full.name}/ivy.xsd"/> + <zipfileset dir="${artifacts.build.dir}" includes="ivy.xml" fullpath="${snapshot.full.name}/ivy.xml"/> + <zipfileset dir="${basedir}" includes="build-for-bin-distrib.xml" fullpath="${snapshot.full.name}/build.xml"/> + + <zipfileset dir="${artifacts.build.dir}/jars" includes="${final.name}" fullpath="${snapshot.full.name}/ivy-${build.version}.jar"/> + </zip> + <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.tar.gz" + compression="gzip" longfile="gnu"> + <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin.zip"/> + </tar> + </target> + + <target name="snapshot-bin-with-dependencies" depends="snapshot-metadata, jar, all-doc"> + <mkdir dir="${distrib.dir}/dist/${build.version}"/> + <delete dir="${build.dir}/lib" /> + <ivy:retrieve conf="default" pattern="${build.dir}/lib/[artifact]-[revision].[ext]" /> + <zip destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.zip"> + <zipfileset dir="${doc.build.dir}" prefix="${snapshot.full.name}/doc" excludes="**/reports/coverage/**,**/reports/test/**"/> + <zipfileset dir="${basedir}/src/example" prefix="${snapshot.full.name}/src/example"/> + <zipfileset dir="${basedir}" includes="NOTICE" fullpath="${snapshot.full.name}/NOTICE"/> + <zipfileset dir="${basedir}" includes="README" prefix="${snapshot.full.name}"/> + <zipfileset dir="${basedir}" includes="LICENSE*" prefix="${snapshot.full.name}"/> + <zipfileset dir="${basedir}" includes="CHANGES.txt" fullpath="${snapshot.full.name}/CHANGES.txt"/> + <zipfileset dir="${basedir}" includes="RELEASE_NOTES" fullpath="${snapshot.full.name}/RELEASE_NOTES"/> + <zipfileset dir="${src.dir}/org/apache/ivy/plugins/parser/xml" includes="ivy.xsd" fullpath="${snapshot.full.name}/ivy.xsd"/> + <zipfileset dir="${artifacts.build.dir}" includes="ivy.xml" fullpath="${snapshot.full.name}/ivy.xml"/> + + <zipfileset dir="${artifacts.build.dir}/jars" includes="${final.name}" fullpath="${snapshot.full.name}/ivy-${build.version}.jar"/> + + <zipfileset dir="${build.dir}/lib" prefix="${snapshot.full.name}/lib" excludes="ant-*.jar,bcpg-*.jar,bcprov*.jar" /> + </zip> + <tar destfile="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.tar.gz" + compression="gzip" longfile="gnu"> + <zipfileset src="${distrib.dir}/dist/${build.version}/${snapshot.full.name}-bin-with-deps.zip"/> + </tar> + </target> + + <target name="snapshot-bin" + depends="snapshot-bin-with-dependencies, snapshot-bin-without-dependencies" /> + + <target name="release-xsd" depends="init-snapshot"> + <!-- copies current ivy xml schema to doc source, so that it will be available from web site --> + <copy file="${src.dir}/org/apache/ivy/plugins/parser/xml/ivy.xsd" todir="${doc.src.dir}" /> + </target> + + + <target name="snapshot-maven2" depends="init-snapshot, snapshot-metadata, jar, sources, javadoc"> + <property name="m2.distrib.dir" value="${distrib.dir}/maven2/${build.version}" /> + <ivy:makepom ivyfile="${artifacts.build.dir}/ivy.xml" + pomfile="${m2.distrib.dir}/ivy-${build.version}.pom" + templatefile="${basedir}/src/etc/makepom/pom.template"> + <mapping conf="core" scope="compile"/> + <mapping conf="test" scope="test"/> + </ivy:makepom> + <copy file="${artifacts.build.dir}/jars/${final.name}" + tofile="${m2.distrib.dir}/ivy-${build.version}.jar" /> + <!-- jar javadocs --> + <jar destfile="${m2.distrib.dir}/ivy-${build.version}-javadoc.jar"> + <fileset dir="${javadoc.build.dir}" /> + </jar> + <!-- copy sources jar --> + <copy file="${artifacts.build.dir}/sources/${final.name}" + tofile="${m2.distrib.dir}/ivy-${build.version}-sources.jar" /> + + <checksum algorithm="md5"> + <fileset dir="${m2.distrib.dir}"> + <include name="*.pom"/> + <include name="*.jar"/> + </fileset> + </checksum> + <checksum algorithm="sha1"> + <fileset dir="${m2.distrib.dir}"> + <include name="*.pom"/> + <include name="*.jar"/> + </fileset> + </checksum> + </target> + + + <target name="snapshot-checksums"> + <checksum algorithm="md5"> + <fileset dir="${distrib.dir}/dist/${build.version}"> + <include name="*.pom"/> + <include name="*.jar"/> + <include name="*.zip"/> + <include name="*.gz"/> + </fileset> + </checksum> + <checksum algorithm="sha"> + <fileset dir="${distrib.dir}/dist/${build.version}"> + <include name="*.pom"/> + <include name="*.jar"/> + <include name="*.zip"/> + <include name="*.gz"/> + </fileset> + </checksum> + </target> + + <target name="snapshot-version"> + <property name="version.prefix" value="${target.ivy.version}-dev-"/> + </target> + + <target name="release-version"> + <property name="build.version" value="${target.ivy.version}" /> + <echo>Setting version to ${build.version}</echo> + <condition property="status" value="release"> + <matches pattern="^\d+\.\d+\.\d+$" string="${build.version}"/> + </condition> + <condition property="status" value="milestone"> + <matches pattern="^\d+\.\d+\.\d+-(alpha|beta|rc)\d+$" string="${build.version}"/> + </condition> + <property name="status" value="integration" /> + <echo>Setting status to ${status}</echo> + </target> + + <target name="sign" depends="init-ivy"> <property file="${user.home}/ivybuild.properties" /> <input message="please enter your PGP password: " addproperty="pgp.password"/> <input message="please enter your PGP keyId: " addproperty="pgp.keyId"/> @@ -396,54 +396,54 @@ module="bcprov-jdk16" revision="1.45" inline="true" pathid="bouncycastle.bcprov.classpath"/> <ivy2:cachepath organisation="org.bouncycastle" settingsRef="sign.settingsId" transitive="false" log="download-only" module="bcpg-jdk16" revision="1.45" inline="true" pathid="bouncycastle.bcpg.classpath"/> - - <!-- - For some reason, if we use the openpgp:signer task here directly, the bouncycastle security - provider cannot be loaded. If we launch it as a forked process everything works fine !?! - --> - <java classname="org.apache.tools.ant.launch.Launcher" - fork="true"> - <classpath> - <fileset dir="${ant.home}" includes="**/*.jar" /> - <path refid="bouncycastle.bcprov.classpath" /> - <path refid="bouncycastle.bcpg.classpath" /> - <path refid="openpgp.classpath" /> - </classpath> - <arg line="-f build-release.xml" /> - <arg line="sign-internal" /> - <arg line="-Dpgp.password=${pgp.password}" /> - <arg line="-Dpgp.keyId=${pgp.keyId}" /> - </java> - </target> - - <target name="sign-internal"> - <property file="build.properties" /> - <taskdef resource="org/apache/commons/openpgp/ant/antlib.xml" uri="antlib:org.apache.commons.openpgp.ant" /> - <openpgp:signer secring="${user.home}/.gnupg/secring.gpg" - pubring="${user.home}/.gnupg/pubring.gpg" - password="${pgp.password}" - keyid="${pgp.keyId}" - asciiarmor="true"> - <fileset dir="${distrib.dir}"> - <include name="**/*.pom"/> - <include name="**/*.jar"/> - <include name="**/*.zip"/> - <include name="**/*.gz"/> - </fileset> - </openpgp:signer> - </target> - - <target name="rat" depends="init-ivy"> - <property name="rat.failOnError" value="true"/> - <ivy:cachepath organisation="org.apache.rat" module="apache-rat-tasks" revision="0.6" - inline="true" conf="default" pathid="rat.classpath" + + <!-- + For some reason, if we use the openpgp:signer task here directly, the bouncycastle security + provider cannot be loaded. If we launch it as a forked process everything works fine !?! + --> + <java classname="org.apache.tools.ant.launch.Launcher" + fork="true"> + <classpath> + <fileset dir="${ant.home}" includes="**/*.jar" /> + <path refid="bouncycastle.bcprov.classpath" /> + <path refid="bouncycastle.bcpg.classpath" /> + <path refid="openpgp.classpath" /> + </classpath> + <arg line="-f build-release.xml" /> + <arg line="sign-internal" /> + <arg line="-Dpgp.password=${pgp.password}" /> + <arg line="-Dpgp.keyId=${pgp.keyId}" /> + </java> + </target> + + <target name="sign-internal"> + <property file="build.properties" /> + <taskdef resource="org/apache/commons/openpgp/ant/antlib.xml" uri="antlib:org.apache.commons.openpgp.ant" /> + <openpgp:signer secring="${user.home}/.gnupg/secring.gpg" + pubring="${user.home}/.gnupg/pubring.gpg" + password="${pgp.password}" + keyid="${pgp.keyId}" + asciiarmor="true"> + <fileset dir="${distrib.dir}"> + <include name="**/*.pom"/> + <include name="**/*.jar"/> + <include name="**/*.zip"/> + <include name="**/*.gz"/> + </fileset> + </openpgp:signer> + </target> + + <target name="rat" depends="init-ivy"> + <property name="rat.failOnError" value="true"/> + <ivy:cachepath organisation="org.apache.rat" module="apache-rat-tasks" revision="0.6" + inline="true" conf="default" pathid="rat.classpath" log="download-only"/> - - <typedef resource="org/apache/rat/anttasks/antlib.xml" - uri="antlib:org.apache.rat.anttasks" - classpathref="rat.classpath" /> - <delete dir="${rat.report.dir}"/> + <typedef resource="org/apache/rat/anttasks/antlib.xml" + uri="antlib:org.apache.rat.anttasks" + classpathref="rat.classpath" /> + + <delete dir="${rat.report.dir}"/> <mkdir dir="${rat.report.dir}"/> <rat:report xmlns:rat="antlib:org.apache.rat.anttasks" reportFile="${rat.report.dir}/rat-report.txt"> <fileset dir="${basedir}"> @@ -471,8 +471,8 @@ </and> </condition> </fail> - </target> - + </target> + <target name="upload-nexus" depends="release-version, init-ivy, jar"> <ivy:retrieve conf="default" pattern="${build.dir}/lib/[artifact]-[revision].[ext]" /> @@ -483,7 +483,7 @@ <fileset dir="${build.dir}/lib" excludes="ant-*.jar" /> </classpath> </taskdef> - + <property file="${user.home}/ivybuild.properties" /> <input message="please enter your PGP password: " addproperty="pgp.password"/> <input message="please enter your PGP keyId: " addproperty="pgp.keyId"/> @@ -509,11 +509,11 @@ </ivy2:publish> </target> - <target name="prepare-snapshot" - depends="/localivy, clean-ivy-home, clean, clean-lib, snapshot-version, install, clean-examples, coverage-report" /> - <target name="snapshot" - depends="prepare-snapshot, snapshot-src, snapshot-bin, snapshot-maven2, snapshot-checksums" - description="used for nightly and integration builds"/> - <target name="release" depends="release-version, /localivy, clean-ivy-home, clean, clean-lib, rat, snapshot" description="make a new release of Ivy"/> + <target name="prepare-snapshot" + depends="/localivy, clean-ivy-home, clean, clean-lib, snapshot-version, install, clean-examples, coverage-report" /> + <target name="snapshot" + depends="prepare-snapshot, snapshot-src, snapshot-bin, snapshot-maven2, snapshot-checksums" + description="used for nightly and integration builds"/> + <target name="release" depends="release-version, /localivy, clean-ivy-home, clean, clean-lib, rat, snapshot" description="make a new release of Ivy"/> </project> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/9edca730/build.xml ---------------------------------------------------------------------- diff --git a/build.xml b/build.xml index a9b4c12..bb635c1 100644 --- a/build.xml +++ b/build.xml @@ -14,27 +14,27 @@ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations - under the License. + under the License. --> <project name="ivy" default="coverage-report" xmlns:ivy="antlib:org.apache.ivy.ant"> - <property environment="env" /> + <property environment="env" /> <property file="version.properties" /> <property file="build.properties" /> <property name="final.name" value="ivy.jar" /> - + <target name="init-ivy-user-home" unless="ivy.use.local.home"> <condition property="ivy.home" value="${env.IVY_HOME}"> <isset property="env.IVY_HOME" /> </condition> <property name="ivy.home" value="${user.home}/.ivy2" /> </target> - + <target name="init-ivy-local-home" if="ivy.use.local.home"> <property name="ivy.home" value="${basedir}/.ivy2" /> </target> - + <target name="init-ivy-home" depends="init-ivy-user-home, init-ivy-local-home" /> <target name="init-ivy" depends="compile-bootstrap, init-ivy-home"> @@ -45,18 +45,18 @@ <pathelement location="${bootstrap.classes.build.dir}" /> </classpath> </taskdef> - + <ivy:configure override="true" /> </target> - - <target name="install" depends="init-ivy-home, jar" - description="build Ivy and install it in Ivy user home for builds using Ivy user home to load Ivy jar"> + + <target name="install" depends="init-ivy-home, jar" + description="build Ivy and install it in Ivy user home for builds using Ivy user home to load Ivy jar"> <property name="ivy.jar.file" value="${ivy.home}/jars/ivy.jar" /> <copy file="${artifacts.build.dir}/jars/${final.name}" tofile="${ivy.jar.file}" /> </target> <target name="install-ant" depends="init-ivy-home, jar" - description="build Ivy and install it in Ant home lib"> + description="build Ivy and install it in Ant home lib"> <condition property="ant.home" value="${env.ANT_HOME}"> <isset property="env.ANT_HOME" /> </condition> @@ -95,8 +95,8 @@ <include name="*.jar" /> <exclude name="ant.jar" /> <exclude name="ant-launcher.jar" /> - <exclude name="ant-nodeps.jar"/> - <exclude name="ant-trax.jar"/> + <exclude name="ant-nodeps.jar"/> + <exclude name="ant-trax.jar"/> </fileset> <pathelement location="${core.classes.build.dir}" /> <pathelement location="${ant.classes.build.dir}" /> @@ -104,20 +104,20 @@ <pathelement path="${test.build.dir}" /> </path> </target> - + <target name="prepare" depends="init"> <mkdir dir="${classes.build.dir}" /> <mkdir dir="${core.classes.build.dir}" /> - <mkdir dir="${bootstrap.classes.build.dir}" /> + <mkdir dir="${bootstrap.classes.build.dir}" /> <mkdir dir="${ant.classes.build.dir}" /> <mkdir dir="${optional.classes.build.dir}" /> <mkdir dir="${all.classes.build.dir}" /> <mkdir dir="${test.build.dir}" /> <mkdir dir="${artifacts.build.dir}" /> <mkdir dir="${test.report.dir}" /> - <mkdir dir="${ivy.report.dir}" /> + <mkdir dir="${ivy.report.dir}" /> </target> - + <target name="clean" description="delete all generated files keeping sources only"> <delete dir="${classes.build.dir}" /> <delete dir="${test.build.dir}" /> @@ -127,49 +127,49 @@ <delete dir="${doc.build.dir}" /> <delete dir="${build.dir}" /> </target> - + <target name="clean-lib"> <delete dir="${lib.dir}" /> </target> - + <target name="clean-ivy-cache" depends="init-ivy-home"> <delete dir="${ivy.home}/cache" /> </target> - + <target name="clean-ivy-home" depends="init-ivy-home"> <delete dir="${ivy.home}" /> </target> - + <target name="clean-examples" description="clean all examples"> <subant target="clean" failonerror="false"> <fileset dir="${example.dir}" includes="**/build.xml" /> - </subant> + </subant> </target> - + <target name="clean-all" depends="clean, clean-lib, clean-examples" /> - + <target name="/noresolve" description="use to skip dependency resolution"> <property name="no.resolve" value="true" /> </target> - + <target name="/notest" description="use to skip tests"> <property name="skip.test" value="true" /> </target> - + <target name="/nojavadoc" description="use to skip javadoc"> <property name="skip.javadoc" value="true" /> </target> - + <target name="/localivy" description="use a local ivy home"> <property name="ivy.use.local.home" value="true" /> </target> - + <target name="/offline" depends="/noresolve" description="use to indicate no internet connection is available"> <property name="offline" value="true" /> </target> - + <target name="default-version"> - <tstamp> + <tstamp> <format property="pubdate" pattern="yyyyMMddHHmmss" /> </tstamp> <property name="version.prefix" value="${target.ivy.version}-local-" /> @@ -187,7 +187,7 @@ <target name="compile-core" depends="prepare"> <javac srcdir="${src.dir}" destdir="${core.classes.build.dir}" - sourcepath="" + sourcepath="" source="${ivy.minimum.javaversion}" target="${ivy.minimum.javaversion}" debug="${debug.mode}" @@ -202,7 +202,7 @@ <excludesfile name="optional.patterns" /> </fileset> </copy> - + <!-- copy settings files for backward compatibility with ivyconf naming --> <copy file="${core.classes.build.dir}/org/apache/ivy/core/settings/ivysettings-local.xml" tofile="${core.classes.build.dir}/org/apache/ivy/core/settings/ivyconf-local.xml" /> @@ -218,11 +218,11 @@ tofile="${core.classes.build.dir}/org/apache/ivy/core/settings/ivyconf.xml" /> </target> - <!-- Build the Ant tasks with the current Ant runtime --> + <!-- Build the Ant tasks with the current Ant runtime --> <target name="compile-bootstrap" depends="compile-core"> <javac srcdir="${src.dir}" destdir="${bootstrap.classes.build.dir}" - sourcepath="" + sourcepath="" classpathref="build.bootstrap.classpath" source="${ivy.minimum.javaversion}" target="${ivy.minimum.javaversion}" @@ -237,12 +237,12 @@ </fileset> </copy> </target> - - <!-- Build the Ant tasks with the minimal Ant runtime --> + + <!-- Build the Ant tasks with the minimal Ant runtime --> <target name="compile-ant" depends="compile-core, resolve"> <javac srcdir="${src.dir}" destdir="${ant.classes.build.dir}" - sourcepath="" + sourcepath="" classpathref="build.ant.classpath" source="${ivy.minimum.javaversion}" target="${ivy.minimum.javaversion}" @@ -256,16 +256,16 @@ <exclude name="**/*.java" /> </fileset> </copy> - + <!-- copy antlib for backward compatibility with fr.jayasoft.ivy package --> - <copy file="${ant.classes.build.dir}/org/apache/ivy/ant/antlib.xml" + <copy file="${ant.classes.build.dir}/org/apache/ivy/ant/antlib.xml" todir="${ant.classes.build.dir}/fr/jayasoft/ivy/ant" /> </target> - + <target name="compile-optional" depends="compile-ant, resolve"> <javac srcdir="${src.dir}" destdir="${optional.classes.build.dir}" - sourcepath="" + sourcepath="" classpathref="build.optional.classpath" source="${ivy.minimum.javaversion}" target="${ivy.minimum.javaversion}" @@ -290,18 +290,18 @@ <echo message="version=${build.version}${line.separator}" file="${core.classes.build.dir}/module.properties" append="true" /> <echo message="date=${pubdate}${line.separator}" file="${core.classes.build.dir}/module.properties" append="true" /> - <mkdir dir="${artifacts.build.dir}/jars/"/> - - <!-- - there is a default Bundle-Version attribute in the source MANIFEST, used to ease - development in eclipse. - We remove this line to make sure we get the Bundle-Version as set in the jar task - --> - <copy file="${basedir}/META-INF/MANIFEST.MF" tofile="${artifacts.build.dir}/MANIFEST.MF"> - <filterchain> - <replaceregex pattern="Bundle-Version:.*" replace="Bundle-Version: ${bundle.version}" byline="true" /> - </filterchain> - </copy> + <mkdir dir="${artifacts.build.dir}/jars/"/> + + <!-- + there is a default Bundle-Version attribute in the source MANIFEST, used to ease + development in eclipse. + We remove this line to make sure we get the Bundle-Version as set in the jar task + --> + <copy file="${basedir}/META-INF/MANIFEST.MF" tofile="${artifacts.build.dir}/MANIFEST.MF"> + <filterchain> + <replaceregex pattern="Bundle-Version:.*" replace="Bundle-Version: ${bundle.version}" byline="true" /> + </filterchain> + </copy> <copy todir="${all.classes.build.dir}"> <fileset dir="${core.classes.build.dir}" /> @@ -325,24 +325,24 @@ </manifest> <fileset dir="${all.classes.build.dir}" /> </jar> - <!-- copy main jar to ease its use as an OSGi bundle --> - <copy file="${artifacts.build.dir}/jars/${final.name}" - tofile="${artifacts.build.dir}/org.apache.ivy_${bundle.version}.jar" /> + <!-- copy main jar to ease its use as an OSGi bundle --> + <copy file="${artifacts.build.dir}/jars/${final.name}" + tofile="${artifacts.build.dir}/org.apache.ivy_${bundle.version}.jar" /> <!-- clean generated module properties file --> <delete file="${core.classes.build.dir}/module.properties" /> </target> - <!-- ================================================================= + <!-- ================================================================= PUBLISH LOCAL ================================================================= --> <target name="publish-local" depends="jar,sources" description="publishes Ivy to Ivy local repository"> <ivy:publish resolver="local" pubrevision="${build.version}" - artifactsPattern="${artifacts.build.dir}/[type]s/[artifact].[ext]" + artifactsPattern="${artifacts.build.dir}/[type]s/[artifact].[ext]" forcedeliver="true" /> </target> - <!-- ================================================================= + <!-- ================================================================= TESTS ================================================================= --> <target name="build-custom-resolver-jar" depends="jar"> @@ -365,23 +365,23 @@ <not><contains text="remote.test" /></not> </fileset> </target> - + <target name="init-tests-online" unless="offline"> <fileset id="test.fileset" dir="${test.dir}"> <include name="**/${test.class.pattern}.java" /> <exclude name="**/Abstract*Test.java" /> </fileset> </target> - + <target name="init-tests" depends="init-tests-offline, init-tests-online" /> - + <target name="emma" depends="jar" unless="skip.test"> - <ivy:cachepath organisation="emma" module="emma" revision="2.0.5312" - inline="true" conf="default" pathid="emma.classpath" - log="download-only" /> - <ivy:cachepath organisation="emma" module="emma_ant" revision="2.0.5312" - inline="true" conf="default" pathid="emma.ant.classpath" transitive="false" - log="download-only" /> + <ivy:cachepath organisation="emma" module="emma" revision="2.0.5312" + inline="true" conf="default" pathid="emma.classpath" + log="download-only" /> + <ivy:cachepath organisation="emma" module="emma_ant" revision="2.0.5312" + inline="true" conf="default" pathid="emma.ant.classpath" transitive="false" + log="download-only" /> <taskdef resource="emma_ant.properties"> <classpath refid="emma.classpath" /> <classpath refid="emma.ant.classpath" /> @@ -403,14 +403,14 @@ </instr> </emma> <delete file="${coverage.dir}/coverage.emma" /> - <!-- add emma path to test path, because emma jars need to be available when running + <!-- add emma path to test path, because emma jars need to be available when running instrumented classes --> <ivy:addpath topath="test.classpath" first="true"> <pathelement location="${coverage.dir}/classes" /> <path refid="emma.classpath" /> </ivy:addpath> </target> - + <target name="build-test" depends="jar"> <javac srcdir="${test.dir}" destdir="${test.build.dir}" @@ -427,12 +427,12 @@ </copy> </target> - <target name="prepare-osgi-tests" depends="resolve" unless="skip.test"> + <target name="prepare-osgi-tests" depends="resolve" unless="skip.test"> <ant dir="${basedir}/test/test-repo" target="generate-bundles" /> - </target> + </target> <target name="prepare-test-jar-repositories" unless="skip.test"> - <mkdir dir="${basedir}/test/jar-repos" /> + <mkdir dir="${basedir}/test/jar-repos" /> <jar destfile="${basedir}/test/jar-repos/jarrepo1.jar" > <fileset dir="${basedir}/test/repositories/1" /> </jar> @@ -441,10 +441,10 @@ </jar> </target> - <target name="test-internal" depends="build-test, init-tests, prepare-osgi-tests, prepare-test-jar-repositories" unless="skip.test"> + <target name="test-internal" depends="build-test, init-tests, prepare-osgi-tests, prepare-test-jar-repositories" unless="skip.test"> <mkdir dir="${test.xml.dir}" /> - - <junit + + <junit haltonfailure="off" haltonerror="off" errorproperty="test.failed" @@ -459,30 +459,40 @@ <pathelement path="${ant.home}/lib/ant-nodeps.jar"/> <pathelement path="${ant.home}/lib/ant-trax.jar"/> </classpath> - - <!-- pass the proxy properties to the forked junit process to use correct proxy --> - <syspropertyset> - <propertyref prefix="http" /> - </syspropertyset> + + <!-- pass the proxy properties to the forked junit process to use correct proxy --> + <syspropertyset> + <propertyref prefix="http" /> + </syspropertyset> <jvmarg value="-Demma.coverage.out.file=${coverage.dir}/coverage.emma" /> <jvmarg value="-Demma.coverage.out.merge=true" /> - + <!-- Added this to test IVY-65 --> <jvmarg value="-Duser.region=TR" /> <jvmarg value="-Duser.language=tr" /> - + <formatter type="xml"/> <batchtest todir="${test.xml.dir}"> <fileset refid="test.fileset" /> </batchtest> </junit> </target> + + <target name="x" depends="init,build-test"> + <java classname="org.apache.ivy.plugins.resolver.FileSystemResolverTest"> + <classpath> + <path refid="test.classpath" /> + <pathelement path="${ant.home}/lib/ant-nodeps.jar"/> + <pathelement path="${ant.home}/lib/ant-trax.jar"/> + </classpath> + </java> + </target> <target name="test" depends="test-internal" description="Run the test"> <fail if="test.failed" message="At least one test has failed. See logs (in ${test.xml.dir}) for details (use the target test-report to run the test with a report)" /> </target> - + <!-- ================================================================= REPORTS AND DOCUMENTATION ================================================================= --> @@ -496,7 +506,7 @@ <fail if="test.failed" message="At least one test has failed. See logs (in ${test.xml.dir}) or report (in ${test.report.dir})" /> </target> - + <target name="coverage-report" depends="emma, test-report" unless="skip.test" description="run tests with instrumentation and generate coverage report"> <mkdir dir="${coverage.report.dir}" /> @@ -511,19 +521,19 @@ </report> </emma> </target> - - <target name="ivy-report" depends="resolve"> - <ivy:report todir="${ivy.report.dir}"/> - </target> + + <target name="ivy-report" depends="resolve"> + <ivy:report todir="${ivy.report.dir}"/> + </target> <target name="javadoc" unless="skip.javadoc"> <javadoc destdir="${javadoc.build.dir}" useexternalfile="true"> <fileset dir="${src.dir}" includes="**/*.java" /> </javadoc> </target> - + <target name="sources" depends="default-version" description="Create source archive files"> - <mkdir dir="${artifacts.build.dir}/sources/"/> + <mkdir dir="${artifacts.build.dir}/sources/"/> <jar destfile="${artifacts.build.dir}/sources/${final.name}"> <metainf dir="${basedir}" includes="LICENSE,NOTICE" /> <manifest> @@ -533,21 +543,21 @@ </manifest> <fileset dir="${src.dir}" /> </jar> - </target> - + </target> + <target name="fixcrlf"> - <property name="eol.native.includes" + <property name="eol.native.includes" value="**/*.html,**/*.json,**/*.java,**/*.xml,**/*.txt,**/*.MF,**/*.properties,**/*.patterns,**/*.pom,**/*.xsl,**/*.css" /> - <property name="eol.native.excludes" + <property name="eol.native.excludes" value="build/**,bin/**,lib/**" /> - <fileset id="eol.native.fileset" - dir="${basedir}" + <fileset id="eol.native.fileset" + dir="${basedir}" includes="${eol.native.includes}" excludes="${eol.native.excludes}" /> - - <fixcrlf srcdir="${basedir}" - includes="${eol.native.includes}" + + <fixcrlf srcdir="${basedir}" + includes="${eol.native.includes}" excludes="${eol.native.excludes}" /> <apply executable="svn"> <fileset refid="eol.native.fileset" /> @@ -556,20 +566,20 @@ <arg value='"native"' /> </apply> </target> - + <!-- Checks Ivy codebase according to ${checkstyle.src.dir}/checkstyle-config --> <target name="checkstyle-internal" depends="jar"> <ivy:cachepath organisation="checkstyle" module="checkstyle" revision="5.0" - inline="true" conf="default" pathid="checkstyle.classpath" transitive="true" - log="download-only"/> + inline="true" conf="default" pathid="checkstyle.classpath" transitive="true" + log="download-only"/> <taskdef resource="checkstyletask.properties" classpathref="checkstyle.classpath" /> <mkdir dir="${checkstyle.report.dir}" /> - <checkstyle config="${checkstyle.src.dir}/checkstyle-config" - failOnViolation="false" failureProperty="checkstyle.failed"> - <classpath> - <path refid="run.classpath" /> - </classpath> + <checkstyle config="${checkstyle.src.dir}/checkstyle-config" + failOnViolation="false" failureProperty="checkstyle.failed"> + <classpath> + <path refid="run.classpath" /> + </classpath> <formatter type="xml" toFile="${checkstyle.report.dir}/checkstyle.xml" /> <fileset dir="${src.dir}"> <include name="**/*.java" /> @@ -578,11 +588,11 @@ <include name="**/*.java" /> </fileset> </checkstyle> - </target> - + </target> + <target name="checkstyle" depends="checkstyle-internal" description="checks Ivy codebase according to ${checkstyle.src.dir}/checkstyle-config"> - <fail if="checkstyle.failed" - message="Checkstyle has errors. See report in ${checkstyle.report.dir}" /> + <fail if="checkstyle.failed" + message="Checkstyle has errors. See report in ${checkstyle.report.dir}" /> </target> <target name="checkstyle-report" depends="checkstyle-internal"> @@ -596,37 +606,37 @@ <target name="init-findbugs" unless="findbugs.home"> <!-- Findbugs: Getting Findbugs --> - <property name="findbugs.download.name" + <property name="findbugs.download.name" value="findbugs-1.3.5" description="Name of the download file without suffix. Also the internal root directory of the ZIP."/> - <property name="findbugs.download.file" + <property name="findbugs.download.file" value="${findbugs.download.name}.zip" description="The filename of the ZIP."/> - <property name="findbugs.download.url" + <property name="findbugs.download.url" value="http://garr.dl.sourceforge.net/sourceforge/findbugs/${findbugs.download.file}" description="The download adress at a mirror of Sourceforge."/> - <property name="findbugs.download.to" + <property name="findbugs.download.to" value="${build.dir}/.downloads" description="Where to store the download and 'install' Findbugs."/> - <available - property="findbugs.home" + <available + property="findbugs.home" value="${findbugs.download.to}/${findbugs.download.name}" file="${findbugs.download.to}/${findbugs.download.name}/lib/findbugs.jar" description="Check if Findbugs is already installed." /> - + <!-- Findbugs: Running Findbugs --> - <property name="findbugs.reportdir" - location="${reports.dir}/findbugs" + <property name="findbugs.reportdir" + location="${reports.dir}/findbugs" description="Where to store Findbugs results"/> - <property name="findbugs.raw" - value="raw.xml" + <property name="findbugs.raw" + value="raw.xml" description="Findbugs Output xml-file"/> - <property name="findbugs.xsl" - value="fancy.xsl" + <property name="findbugs.xsl" + value="fancy.xsl" description="Which XSL to use for generating Output: default, fancy, plain, summary"/> - <property name="findbugs.jvmargs" - value="-Xms128m -Xmx512m" + <property name="findbugs.jvmargs" + value="-Xms128m -Xmx512m" description="JVMArgs for invoking Findbugs"/> <mkdir dir="${findbugs.download.to}"/> @@ -635,15 +645,15 @@ <property name="findbugs.home" location="${findbugs.download.to}/${findbugs.download.name}"/> <mkdir dir="${findbugs.home}/plugin"/> </target> - + <target name="findbugs" description="checks Ivy codebase with Findbugs" depends="init-findbugs,compile-core" xmlns:fb="http://findbugs.sourceforge.net/"> <path id="findbugs.real.classpath"> <fileset dir="${findbugs.home}/lib" includes="*.jar"/> </path> - - <!-- Load the Findbugs AntTasks --> + + <!-- Load the Findbugs AntTasks --> <taskdef uri="http://findbugs.sourceforge.net/" resource="edu/umd/cs/findbugs/anttask/tasks.properties" classpathref="findbugs.real.classpath" /> - + <!-- Start Findbugs --> <mkdir dir="${findbugs.reportdir}"/> <fb:findbugs home="${findbugs.home}" @@ -655,27 +665,27 @@ <class location="${core.classes.build.dir}" /> <sourcePath path="${src.dir}" /> </fb:findbugs> - + <!-- Generate (human) readable output --> <xslt basedir="${findbugs.reportdir}" includes="${findbugs.raw}" destdir="${findbugs.reportdir}"> <style> <javaresource name="${findbugs.xsl}" classpathref="findbugs.real.classpath"/> - </style> + </style> </xslt> </target> - + <!-- ================================================================= IDE SPECIFIC ================================================================= --> <available file="${basedir}/.classpath" property="eclipse.classpath.exists" /> <target name="check-eclipse-classpath-overwrite" if="eclipse.classpath.exists"> - <input message=".classpath file already exists.${line.separator}Are you sure you want to overwrite it and loose your original file?" + <input message=".classpath file already exists.${line.separator}Are you sure you want to overwrite it and loose your original file?" validargs="Y,N,y,n" addproperty="eclipse.classpath.confirm" /> <condition property="eclipse.classpath.abort"> <equals arg1="${eclipse.classpath.confirm}" arg2="N" casesensitive="false" /> </condition> </target> - + <target name="eclipse-default" depends="resolve, check-eclipse-classpath-overwrite" unless="eclipse.classpath.abort" description="creates a default .classpath for eclipse, using jars resolved by this ant build"> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/9edca730/ivy.xml ---------------------------------------------------------------------- diff --git a/ivy.xml b/ivy.xml index ea0c6bb..5dac466 100644 --- a/ivy.xml +++ b/ivy.xml @@ -19,56 +19,56 @@ <ivy-module version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd"> - <info organisation="org.apache.ivy" - module="ivy" - status="integration"> - <description homepage="http://ant.apache.org/ivy/"> - Apache Ivy is a tool for managing (recording, tracking, resolving and reporting) project dependencies. - </description> - </info> - <configurations> - <conf name="core" description="only ivy jar, without any dependencies"/> - <conf name="httpclient" extends="core" description="core + optional httpclient for better http handling"/> - <conf name="oro" extends="core" description="to use optional glob matcher"/> - <conf name="vfs" extends="core" description="core + optional VirtualFileSystem(VFS) support" /> - <conf name="sftp" extends="core" description="core + optional SFTP support" /> - <conf name="standalone" extends="core" description="to launch in standalone mode (from command line)"/> - <conf name="ant" extends="core" description="core + ant jar provided as a dependency"/> - <conf name="default" extends="core" description="full ivy with all dependencies"/> - <conf name="test" description="dependencies used for junit testing ivy" visibility="private" /> - <conf name="source" description="ivy sources" /> - </configurations> - <publications> - <artifact name="ivy" type="jar" conf="core"/> - <artifact name="ivy" type="source" ext="jar" conf="source"/> - </publications> - <dependencies> - <dependency org="org.apache.ant" name="ant" rev="1.7.1" conf="default,ant->default"/> - <dependency org="org.apache.ant" name="ant-nodeps" rev="1.7.1" conf="default"/> + <info organisation="org.apache.ivy" + module="ivy" + status="integration"> + <description homepage="http://ant.apache.org/ivy/"> + Apache Ivy is a tool for managing (recording, tracking, resolving and reporting) project dependencies. + </description> + </info> + <configurations> + <conf name="core" description="only ivy jar, without any dependencies"/> + <conf name="httpclient" extends="core" description="core + optional httpclient for better http handling"/> + <conf name="oro" extends="core" description="to use optional glob matcher"/> + <conf name="vfs" extends="core" description="core + optional VirtualFileSystem(VFS) support" /> + <conf name="sftp" extends="core" description="core + optional SFTP support" /> + <conf name="standalone" extends="core" description="to launch in standalone mode (from command line)"/> + <conf name="ant" extends="core" description="core + ant jar provided as a dependency"/> + <conf name="default" extends="core" description="full ivy with all dependencies"/> + <conf name="test" description="dependencies used for junit testing ivy" visibility="private" /> + <conf name="source" description="ivy sources" /> + </configurations> + <publications> + <artifact name="ivy" type="jar" conf="core"/> + <artifact name="ivy" type="source" ext="jar" conf="source"/> + </publications> + <dependencies> + <dependency org="org.apache.ant" name="ant" rev="1.7.1" conf="default,ant->default"/> + <dependency org="org.apache.ant" name="ant-nodeps" rev="1.7.1" conf="default"/> <dependency org="org.apache.ant" name="ant-trax" rev="1.7.1" conf="default"/> - <dependency org="commons-httpclient" name="commons-httpclient" rev="3.0" conf="default,httpclient->runtime,master" /> - <dependency org="oro" name="oro" rev="2.0.8" conf="default,oro->default"/> - <dependency org="commons-vfs" name="commons-vfs" rev="1.0" conf="default,vfs->default" /> - <dependency org="com.jcraft" name="jsch" rev="0.1.50" conf="default,sftp->default" /> - <dependency org="com.jcraft" name="jsch.agentproxy" rev="0.0.6" conf="default,sftp->default" /> - <dependency org="com.jcraft" name="jsch.agentproxy.connector-factory" rev="0.0.6" conf="default,sftp->default" /> - <dependency org="com.jcraft" name="jsch.agentproxy.jsch" rev="0.0.6" conf="default,sftp->default" /> - <dependency org="org.bouncycastle" name="bcpg-jdk15on" rev="1.52" conf="default" /> + <dependency org="commons-httpclient" name="commons-httpclient" rev="3.0" conf="default,httpclient->runtime,master" /> + <dependency org="oro" name="oro" rev="2.0.8" conf="default,oro->default"/> + <dependency org="commons-vfs" name="commons-vfs" rev="1.0" conf="default,vfs->default" /> + <dependency org="com.jcraft" name="jsch" rev="0.1.50" conf="default,sftp->default" /> + <dependency org="com.jcraft" name="jsch.agentproxy" rev="0.0.6" conf="default,sftp->default" /> + <dependency org="com.jcraft" name="jsch.agentproxy.connector-factory" rev="0.0.6" conf="default,sftp->default" /> + <dependency org="com.jcraft" name="jsch.agentproxy.jsch" rev="0.0.6" conf="default,sftp->default" /> + <dependency org="org.bouncycastle" name="bcpg-jdk15on" rev="1.52" conf="default" /> <dependency org="org.bouncycastle" name="bcprov-jdk15on" rev="1.52" conf="default" /> - <!-- Test dependencies --> - <dependency org="junit" name="junit" rev="3.8.2" conf="test->default" /> - <dependency org="commons-lang" name="commons-lang" rev="2.6" conf="test->default" /> - <dependency org="org.apache.ant" name="ant-testutil" rev="1.7.0" conf="test->default" transitive="false" /> + <!-- Test dependencies --> + <dependency org="junit" name="junit" rev="3.8.2" conf="test->default" /> + <dependency org="commons-lang" name="commons-lang" rev="2.6" conf="test->default" /> + <dependency org="org.apache.ant" name="ant-testutil" rev="1.7.0" conf="test->default" transitive="false" /> <dependency org="ant" name="ant-launcher" rev="1.6.2" conf="test->default" transitive="false"/> <dependency org="ant-contrib" name="ant-contrib" rev="1.0b3" conf="test->default" transitive="false"/> <dependency org="xmlunit" name="xmlunit" rev="1.6" conf="test->default" transitive="false"/> - - <!-- This dependency is necessary for having validation in junit tests when running with JDK1.4 --> - <dependency org="xerces" name="xercesImpl" rev="2.6.2" conf="test->default" /> - <dependency org="xerces" name="xmlParserAPIs" rev="2.6.2" conf="test->default" /> + + <!-- This dependency is necessary for having validation in junit tests when running with JDK1.4 --> + <dependency org="xerces" name="xercesImpl" rev="2.6.2" conf="test->default" /> + <dependency org="xerces" name="xmlParserAPIs" rev="2.6.2" conf="test->default" /> - <!-- Global exclude for junit --> - <exclude org="junit" module="junit" conf="core,default,httpclient,oro,vfs,sftp,standalone,ant" /> - </dependencies> + <!-- Global exclude for junit --> + <exclude org="junit" module="junit" conf="core,default,httpclient,oro,vfs,sftp,standalone,ant" /> + </dependencies> </ivy-module>
