Add spring-build 2.5.2
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.5.2 spring-build
This commit is contained in:
70
spring-build/multi-bundle/artifact.xml
Normal file
70
spring-build/multi-bundle/artifact.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="artifact-multi-bundle">
|
||||
|
||||
<import file="common.xml"/>
|
||||
|
||||
<!-- Main targets -->
|
||||
<target name="javadoc-all"
|
||||
description="Creates javadoc documentation for all classes.">
|
||||
<delete dir="${javadoc-all.output.dir}" quiet="true"/>
|
||||
<mkdir dir="${javadoc-all.output.dir}"/>
|
||||
<all-bundles target="javadoc.prep">
|
||||
<property name="javadoc.prep.dir" value="${javadoc.prep.dir}"/>
|
||||
</all-bundles>
|
||||
<path id="global.path">
|
||||
<fileset dir="${ivy.cache.dir}" erroronmissingdir="false">
|
||||
<exclude name="**/*-sources-*.jar"/>
|
||||
<include name="**/*.jar"/>
|
||||
</fileset>
|
||||
</path>
|
||||
<java-doc input.dir="${javadoc.prep.dir}" output.dir="${javadoc-all.output.dir}" classpath.id="global.path"
|
||||
access="private"/>
|
||||
<delete quiet="true" dir="${javadoc.prep.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="javadoc-api"
|
||||
description="Creates javadoc documentation for all classes.">
|
||||
<delete dir="${javadoc-api.output.dir}" quiet="true"/>
|
||||
<mkdir dir="${javadoc-api.output.dir}"/>
|
||||
<all-bundles target="javadoc.prep">
|
||||
<property name="javadoc.prep.dir" value="${javadoc.prep.dir}"/>
|
||||
</all-bundles>
|
||||
<path id="global.path">
|
||||
<fileset dir="${ivy.cache.dir}" erroronmissingdir="false">
|
||||
<exclude name="**/*-sources-*.jar"/>
|
||||
<include name="**/*.jar"/>
|
||||
</fileset>
|
||||
</path>
|
||||
<java-doc input.dir="${javadoc.prep.dir}" output.dir="${javadoc-api.output.dir}" classpath.id="global.path"
|
||||
access="protected" exclude.package.names="${javadoc.exclude.package.names}"/>
|
||||
<delete quiet="true" dir="${javadoc.prep.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="jar"
|
||||
description="Creates a JAR file containing the output of a compilation of the source tree.">
|
||||
<all-bundles target="jar"/>
|
||||
</target>
|
||||
|
||||
<!-- Other targets -->
|
||||
<target name="javadoc.prep">
|
||||
<all-bundles target="javadoc.prep">
|
||||
<property name="javadoc.prep.dir" value="${javadoc.prep.dir}"/>
|
||||
</all-bundles>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
120
spring-build/multi-bundle/common.xml
Normal file
120
spring-build/multi-bundle/common.xml
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="common-multi-bundle" xmlns:ivy="antlib:org.apache.ivy.ant">
|
||||
|
||||
<tstamp>
|
||||
<format property="timestamp" pattern="yyyyMMddHHmmss" timezone="GMT"/>
|
||||
</tstamp>
|
||||
|
||||
<!-- Properties -->
|
||||
<dirname property="spring.build.dir" file="${ant.file.common-multi-bundle}/.."/>
|
||||
<property file="${spring.build.dir}/common/common.properties"/>
|
||||
|
||||
<!-- Global targets -->
|
||||
<condition property="adjusted.release.type" value="snapshot" else="${release.type}">
|
||||
<equals arg1="integration" arg2="${release.type}"/>
|
||||
</condition>
|
||||
|
||||
<!-- Main targets -->
|
||||
<target name="clean"
|
||||
description="Removes the target directory.">
|
||||
<delete quiet="true" dir="${target.dir}"/>
|
||||
<all-bundles target="clean"/>
|
||||
</target>
|
||||
|
||||
<target name="clean-integration"
|
||||
description="Removes the integration repository directory.">
|
||||
<fail message="The 'integration.repo.dir' property must be set on this project.">
|
||||
<condition>
|
||||
<not>
|
||||
<isset property="integration.repo.dir"/>
|
||||
</not>
|
||||
</condition>
|
||||
</fail>
|
||||
<delete quiet="true" dir="${integration.repo.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="clean-ivy" depends="ivy.init"
|
||||
description="Removes the ivy cache directory.">
|
||||
<fail message="The 'ivy.cache.dir' property must be set on this project.">
|
||||
<condition>
|
||||
<not>
|
||||
<isset property="ivy.cache.dir"/>
|
||||
</not>
|
||||
</condition>
|
||||
</fail>
|
||||
<delete quiet="true" dir="${ivy.cache.dir}"/>
|
||||
</target>
|
||||
|
||||
<!-- Other targets -->
|
||||
<target name="ivy.init" unless="ivy.initialized">
|
||||
<taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant">
|
||||
<classpath>
|
||||
<path location="${ivy.lib.dir}/ivy.jar"/>
|
||||
<path location="${ivy.lib.dir}/org.springframework.build.aws.ivy.jar"/>
|
||||
<path location="${ivy.lib.dir}/commons-codec.jar"/>
|
||||
<path location="${ivy.lib.dir}/commons-httpclient.jar"/>
|
||||
<path location="${ivy.lib.dir}/commons-logging.jar"/>
|
||||
<path location="${ivy.lib.dir}/jets3t.jar"/>
|
||||
<path location="${ivy.lib.dir}"/>
|
||||
</classpath>
|
||||
</taskdef>
|
||||
<ivy:settings file="${ivy.settings.file}"/>
|
||||
<property name="ivy.initialized" value="true"/>
|
||||
</target>
|
||||
|
||||
<!-- Macros -->
|
||||
<macrodef name="all-bundles">
|
||||
<attribute name="target"/>
|
||||
<attribute name="buildpathRef" default="bundles"/>
|
||||
<element name="inherited-properties" optional="true" implicit="true"/>
|
||||
<sequential>
|
||||
<subant target="@{target}" verbose="true" buildpathRef="@{buildpathRef}">
|
||||
<inherited-properties/>
|
||||
<propertyset>
|
||||
<propertyref builtin="commandline"/>
|
||||
</propertyset>
|
||||
<property name="timestamp" value="${timestamp}"/>
|
||||
</subant>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<macrodef name="java-doc">
|
||||
<attribute name="input.dir"/>
|
||||
<attribute name="output.dir"/>
|
||||
<attribute name="classpath.id"/>
|
||||
<attribute name="access"/>
|
||||
<attribute name="exclude.package.names" default=""/>
|
||||
<sequential>
|
||||
<delete quiet="true" dir="@{output.dir}"/>
|
||||
<mkdir dir="@{output.dir}"/>
|
||||
<javadoc.links sourcepath="@{input.dir}" destdir="@{output.dir}" classpathref="@{classpath.id}"
|
||||
access="@{access}" excludepackagenames="@{exclude.package.names}" maxmemory="${javadoc.max.memory}"
|
||||
stylesheetfile="${javadoc.stylesheet.file}" splitindex="true" useexternalfile="true">
|
||||
<header><![CDATA[<!-- Begin Google Analytics code --> <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-2728886-3"); pageTracker._setDomainName("none"); pageTracker._setAllowLinker(true); pageTracker._trackPageview(); </script> <!-- End Google Analytics code -->]]></header>
|
||||
</javadoc.links>
|
||||
<copy toDir="@{output.dir}/resources">
|
||||
<fileset dir="${javadoc.resources.dir}" erroronmissingdir="false"/>
|
||||
</copy>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<presetdef name="javadoc.links">
|
||||
<javadoc/>
|
||||
</presetdef>
|
||||
|
||||
</project>
|
||||
25
spring-build/multi-bundle/default.xml
Normal file
25
spring-build/multi-bundle/default.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="default-multi-bundle">
|
||||
|
||||
<import file="common.xml"/>
|
||||
<import file="artifact.xml"/>
|
||||
<import file="quality.xml"/>
|
||||
<import file="package.xml"/>
|
||||
<import file="publish.xml"/>
|
||||
|
||||
</project>
|
||||
29
spring-build/multi-bundle/package.xml
Normal file
29
spring-build/multi-bundle/package.xml
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="package-multi-bundle">
|
||||
|
||||
<import file="common.xml"/>
|
||||
|
||||
<!-- Main targets -->
|
||||
<target name="package"
|
||||
description="Creates a packaged distributable of the project. Unless overridden, delegates to sub-bundles.">
|
||||
<all-bundles target="package">
|
||||
<property name="package.output.dir" value="${package.output.dir}"/>
|
||||
</all-bundles>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
83
spring-build/multi-bundle/publish.xml
Normal file
83
spring-build/multi-bundle/publish.xml
Normal file
@@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="publish-multi-bundle" xmlns:ivy="antlib:org.apache.ivy.ant"
|
||||
xmlns:aws="antlib:org.springframework.build.aws">
|
||||
|
||||
<import file="common.xml"/>
|
||||
|
||||
<!-- Main targets -->
|
||||
<target name="publish"
|
||||
description="Publishes all artifacts to remote repositories">
|
||||
<all-bundles target="publish"/>
|
||||
</target>
|
||||
|
||||
<target name="publish-ivy"
|
||||
description="Publishes all ivy artifacts to remote repositories">
|
||||
<all-bundles target="publish-ivy"/>
|
||||
</target>
|
||||
|
||||
<target name="publish-maven"
|
||||
description="Publishes all maven artifacts to remote repositories">
|
||||
<all-bundles target="publish-maven"/>
|
||||
</target>
|
||||
|
||||
<target name="publish-maven-central">
|
||||
<all-bundles target="publish-maven-central"/>
|
||||
</target>
|
||||
|
||||
<target name="install-maven">
|
||||
<all-bundles target="install-maven"/>
|
||||
</target>
|
||||
|
||||
<target name="install-maven-central">
|
||||
<all-bundles target="install-maven-central"/>
|
||||
</target>
|
||||
|
||||
<target name="publish-package" depends="aws.init">
|
||||
<fail message="The 'project.name' property must be set on this project.">
|
||||
<condition>
|
||||
<not>
|
||||
<isset property="project.name"/>
|
||||
</not>
|
||||
</condition>
|
||||
</fail>
|
||||
<checksum file="${package.output.file}" algorithm="sha1"/>
|
||||
<aws:s3 accessKey="${accessKey}" secretKey="${secretKey}">
|
||||
<upload bucketName="dist.${bucket.basename}" file="${package.output.file}"
|
||||
toFile="${adjusted.release.type}/${project.key}/${package.file.name}" publicRead="true">
|
||||
<metadata name="project.name" value="${project.name}"/>
|
||||
<metadata name="release.type" value="${release.type}"/>
|
||||
<metadata name="bundle.version" value="${bundle.version}"/>
|
||||
<metadata name="package.file.name" value="${package.file.name}"/>
|
||||
</upload>
|
||||
<upload bucketName="dist.${bucket.basename}" file="${package.output.file}.sha1"
|
||||
toFile="${adjusted.release.type}/${project.key}/${package.file.name}.sha1" publicRead="true">
|
||||
</upload>
|
||||
</aws:s3>
|
||||
</target>
|
||||
|
||||
<!-- Other targets -->
|
||||
<target name="aws.init" depends="ivy.init">
|
||||
<ivy:cachepath resolveId="spring.aws.ant.classpath" pathid="spring.aws.ant.classpath"
|
||||
organisation="org.springframework.build" module="org.springframework.build.aws.ant"
|
||||
revision="${org.springframework.build.aws.ant.version}" conf="runtime" type="jar" inline="true"
|
||||
log="download-only"/>
|
||||
<taskdef resource="org/springframework/build/aws/ant/antlib.xml" uri="antlib:org.springframework.build.aws"
|
||||
classpathref="spring.aws.ant.classpath" />
|
||||
</target>
|
||||
|
||||
</project>
|
||||
138
spring-build/multi-bundle/quality.xml
Normal file
138
spring-build/multi-bundle/quality.xml
Normal file
@@ -0,0 +1,138 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2010 SpringSource
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "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.
|
||||
-->
|
||||
<project name="quality-multi-bundle" xmlns:ivy="antlib:org.apache.ivy.ant">
|
||||
|
||||
<import file="common.xml"/>
|
||||
|
||||
<!-- Main targets -->
|
||||
<target name="test" depends="jar, test.pre, test.do, test.post"
|
||||
description="Executes all tests resulting from a compilation of the test tree returning test success metrics."/>
|
||||
|
||||
<target name="clover" depends="clover.pre, clover.do, clover.post"
|
||||
description="Executes all tests resulting from a compilation of the test tree returning test coverage metrics."/>
|
||||
|
||||
<target name="findbugs" depends="findbugs.pre, findbugs.do"
|
||||
description="Checks all code from the source tree for bugs."/>
|
||||
|
||||
<target name="osgi-validate"
|
||||
description="Checks all code from the source tree for bugs.">
|
||||
<all-bundles target="osgi-validate"/>
|
||||
</target>
|
||||
|
||||
<!-- Other targets -->
|
||||
<target name="test.pre">
|
||||
<delete quiet="true" dir="${test-results.output.dir}"/>
|
||||
<mkdir dir="${test-results.output.dir}/xml"/>
|
||||
</target>
|
||||
|
||||
<target name="test.do">
|
||||
<all-bundles target="test.do">
|
||||
<property name="test-results.output.dir" value="${test-results.output.dir}"/>
|
||||
</all-bundles>
|
||||
</target>
|
||||
|
||||
<target name="test.post">
|
||||
<mkdir dir="${test-results.output.dir}/html"/>
|
||||
<junitreport>
|
||||
<fileset dir="${test-results.output.dir}/xml" erroronmissingdir="false"/>
|
||||
<report format="frames" todir="${test-results.output.dir}/html"/>
|
||||
</junitreport>
|
||||
<delete file="TESTS-TestSuites.xml"/>
|
||||
</target>
|
||||
|
||||
<target name="clover.init" depends="ivy.init">
|
||||
<ivy:cachepath resolveId="clover.classpath" pathid="clover.classpath" organisation="com.atlassian.clover"
|
||||
module="com.springsource.com.cenqua.clover" revision="${com.springsource.com.cenqua.clover.version}"
|
||||
conf="runtime" type="jar" inline="true" log="download-only"/>
|
||||
<taskdef resource="cloverlib.xml" classpathref="clover.classpath"/>
|
||||
</target>
|
||||
|
||||
<target name="clover.pre" depends="clover.init">
|
||||
<delete dir="${clover.output.dir}" quiet="true"/>
|
||||
<mkdir dir="${clover.db.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="clover.do">
|
||||
<condition property="has.unit.test.bundles">
|
||||
<isreference refid="unit.test.bundles" />
|
||||
</condition>
|
||||
<antcall target="clover.do.unit"/>
|
||||
<antcall target="clover.do.all" />
|
||||
</target>
|
||||
|
||||
<target name="clover.do.unit" if="has.unit.test.bundles">
|
||||
<all-bundles target="clover" buildpathRef="unit.test.bundles"/>
|
||||
</target>
|
||||
|
||||
<target name="clover.do.all" unless="has.unit.test.bundles">
|
||||
<all-bundles target="clover" buildpathRef="bundles"/>
|
||||
</target>
|
||||
|
||||
<target name="clover.post" depends="clover.init">
|
||||
<clover-merge initString="${clover.db.file}">
|
||||
<cloverDbSet dir="${basedir}/.." span="30m">
|
||||
<include name="**/target/clover/db/clover.db"/>
|
||||
</cloverDbSet>
|
||||
</clover-merge>
|
||||
<clover-report initstring="${clover.db.file}">
|
||||
<current outfile="${clover.output.dir}/clover.xml" span="30m">
|
||||
<format type="xml"/>
|
||||
<testsources dir="..">
|
||||
<include name="**/src/test/java/**/*.java"/>
|
||||
<include name="**/src/test/java/*.java"/>
|
||||
</testsources>
|
||||
</current>
|
||||
</clover-report>
|
||||
<clover-report initstring="${clover.db.file}">
|
||||
<current outfile="${clover.output.dir}/html" span="30m">
|
||||
<format type="html"/>
|
||||
<testsources dir="..">
|
||||
<include name="**/src/test/java/**/*.java"/>
|
||||
<include name="**/src/test/java/*.java"/>
|
||||
</testsources>
|
||||
</current>
|
||||
</clover-report>
|
||||
<clover-report initstring="${clover.db.file}">
|
||||
<current outfile="${clover.output.dir}/clover.pdf" summary="true" span="30m">
|
||||
<format type="pdf"/>
|
||||
<testsources dir="..">
|
||||
<include name="**/src/test/java/**/*.java"/>
|
||||
<include name="**/src/test/java/*.java"/>
|
||||
</testsources>
|
||||
</current>
|
||||
</clover-report>
|
||||
<clover-check initstring="${clover.db.file}" target="${clover.coverage}" haltOnFailure="${clover.enforce}"
|
||||
span="30m">
|
||||
<testsources dir="..">
|
||||
<include name="**/src/test/java/**/*.java"/>
|
||||
<include name="**/src/test/java/*.java"/>
|
||||
</testsources>
|
||||
</clover-check>
|
||||
</target>
|
||||
|
||||
<target name="findbugs.pre">
|
||||
<delete dir="${findbugs.output.dir}" quiet="true"/>
|
||||
<mkdir dir="${findbugs.output.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="findbugs.do">
|
||||
<all-bundles target="findbugs.do">
|
||||
<property name="findbugs.output.dir" value="${findbugs.output.dir}"/>
|
||||
</all-bundles>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
Reference in New Issue
Block a user