spring-build was previously included via an svn:external. Adding directly to the source tree under Git to avoid the need for a git submodule. In order to build from any earlier commit, it is recommended to export spring-build or symlink an existing copy into the root of the spring-framework project and then build normally. $ svn export https://src.springsource.org/svn/spring-build/tags/project-build-2.2.3 spring-build
99 lines
4.0 KiB
XML
99 lines
4.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project name="artifact-common" xmlns:ivy="antlib:org.apache.ivy.ant"
|
|
xmlns:bundlor="antlib:com.springsource.bundlor.ant">
|
|
|
|
<!-- Main targets -->
|
|
<target name="javadoc-all" depends="ivy.init, resolve.compile, src.init" if="src.exists"
|
|
description="Creates javadoc documentation for all classes.">
|
|
<java-doc input.dir="${main.java.dir}" output.dir="${javadoc-all.output.dir}" classpath.id="compile.classpath"
|
|
access="private"/>
|
|
</target>
|
|
|
|
<target name="javadoc-api" depends="ivy.init, resolve.compile, src.init" if="src.exists"
|
|
description="Creates javadoc documentation for all classes.">
|
|
<java-doc input.dir="${main.java.dir}" output.dir="${javadoc-api.output.dir}" classpath.id="compile.classpath"
|
|
access="protected" exclude.package.names="${javadoc.exclude.package.names}"/>
|
|
</target>
|
|
|
|
<target name="jar" depends="ivy.init, resolve.compile, compile.init, jar.init"
|
|
description="Creates a JAR file containing the output of a compilation of the source tree.">
|
|
<delete quiet="true" file="${ivy.output.file}"/>
|
|
<mkdir dir="${ivy.output.dir}"/>
|
|
<delete quiet="true" file="${jar.output.file}"/>
|
|
<mkdir dir="${jar.output.dir}"/>
|
|
<delete quiet="true" file="${source-jar.output.file}"/>
|
|
<mkdir dir="${source-jar.output.dir}"/>
|
|
|
|
<compile classpath.id="compile.classpath" input.dir="${main.java.dir}" output.dir="${main.output.dir}"
|
|
resources.dir="${main.resources.dir}"/>
|
|
<jar destfile="${jar.output.file}" basedir="${main.output.dir}" index="true" filesetmanifest="merge">
|
|
<manifest>
|
|
<attribute name="Bundle-ManifestVersion" value="2"/>
|
|
<attribute name="Bundle-Version" value="${bundle.version}"/>
|
|
<attribute name="Bundle-Creator" value="${user.name}"/>
|
|
<attribute name="Implementation-Title" value="${implementation.title}"/>
|
|
<attribute name="Implementation-Version" value="${implementation.version}"/>
|
|
</manifest>
|
|
</jar>
|
|
<antcall target="bundlor"/>
|
|
<jar destfile="${source-jar.output.file}" basedir="${main.java.dir}" index="true"/>
|
|
<ivy:publish resolver="integration" pubdate="${timestamp}" status="${release.type}">
|
|
<artifacts pattern="${ivy.output.dir}/[artifact].[ext]"/>
|
|
<artifacts pattern="${jar.output.dir}/[artifact].[ext]"/>
|
|
<artifacts pattern="${source-jar.output.dir}/[artifact].[ext]"/>
|
|
</ivy:publish>
|
|
</target>
|
|
|
|
<!-- Other targets -->
|
|
<propertyset id="bundlor.properties"/>
|
|
|
|
<target name="compile.init" depends="ivy.init"/>
|
|
|
|
<target name="jar.init">
|
|
<fail message="The 'integration.repo.dir' property must be set on this project.">
|
|
<condition>
|
|
<not>
|
|
<isset property="integration.repo.dir"/>
|
|
</not>
|
|
</condition>
|
|
</fail>
|
|
<fail message="The 'ivy.cache.dir' property must be set on this project.">
|
|
<condition>
|
|
<not>
|
|
<isset property="ivy.cache.dir"/>
|
|
</not>
|
|
</condition>
|
|
</fail>
|
|
<fail message="The 'version' property must be set on this project.">
|
|
<condition>
|
|
<not>
|
|
<isset property="version"/>
|
|
</not>
|
|
</condition>
|
|
</fail>
|
|
</target>
|
|
|
|
<target name="bundlor" depends="bundlor.init" unless="disable.bundlor">
|
|
<bundlor:bundlor bundlePath="${jar.output.file}" outputPath="${jar.output.file}"
|
|
mergeExistingHeaders="${merge.existing.headers}" bundleVersion="${bundle.version}"
|
|
manifestTemplatePath="${manifest.template.file}">
|
|
<propertyset refid="bundlor.properties"/>
|
|
</bundlor:bundlor>
|
|
</target>
|
|
|
|
<target name="bundlor.init" depends="ivy.init" unless="disable.bundlor">
|
|
<ivy:cachepath resolveId="bundlor.classpath" pathid="bundlor.classpath" organisation="com.springsource.bundlor"
|
|
module="com.springsource.bundlor.ant" revision="${bundlor.ant.version}" conf="compile" inline="true"
|
|
type="jar" log="download-only"/>
|
|
<taskdef resource="com/springsource/bundlor/ant/antlib.xml" uri="antlib:com.springsource.bundlor.ant"
|
|
classpathref="bundlor.classpath"/>
|
|
</target>
|
|
|
|
<target name="javadoc.prep" depends="src.init" if="src.exists">
|
|
<mkdir dir="${javadoc.prep.dir}"/>
|
|
<copy todir="${javadoc.prep.dir}">
|
|
<fileset dir="${main.java.dir}"/>
|
|
</copy>
|
|
</target>
|
|
|
|
</project> |