1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
<?xml version="1.0"?>
<!--
~ Copyright 2014 Goldman Sachs.
~
~ 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="gs-collections-parent" default="test" xmlns:ivy="antlib:org.apache.ivy.ant">
<description>
A delegating master build file, which builds targets in each module
</description>
<property file="version.properties" />
<target name="clean" description="runs the clean build in each module">
<delete dir="target" />
<sub-target target="clean" />
</target>
<target name="install" description="installs the artifacts to the local cache">
<subant buildpath="./gs-collections-code-generator/" target="install" />
<subant buildpath="./gs-collections-code-generator-ant/" target="install" />
<subant buildpath="./collections-api/" target="install" />
<subant buildpath="./collections/" target="install" />
<subant buildpath="./collections-testutils/" target="install" />
<subant buildpath="./gs-collections-forkjoin/" target="install" />
</target>
<target name="generate-sources" description="generates sources">
<sub-target target="generate-sources" />
</target>
<target name="test" depends="ivy-init, install" description="runs the test build in each module">
<sub-target target="test" />
</target>
<target name="zip" depends="ivy-init, install" description="runs the zip build in each module">
<subant buildpath="./collections-api/" target="zip" />
<subant buildpath="./collections/" target="zip" />
<subant buildpath="./collections-testutils/" target="zip" />
<subant buildpath="./gs-collections-forkjoin/" target="zip" />
</target>
<target name="ivy-init">
<!-- download Ivy from web site so that it can be used even without any special installation -->
<get
src="http://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.version}/ivy-${ivy.version}.jar"
dest="ivy-${ivy.version}.jar"
skipexisting="true"
verbose="true" />
</target>
<target name="ivy-clean" depends="ivy-init" description="clean the ivy cache">
<property name="ivy.jar.file" value="${basedir}/ivy-${ivy.version}.jar" />
<path id="ivy.lib.path">
<pathelement location="${ivy.jar.file}" />
</path>
<taskdef
resource="org/apache/ivy/ant/antlib.xml"
uri="antlib:org.apache.ivy.ant"
classpathref="ivy.lib.path" />
<ivy:cleancache />
</target>
<filelist id="modules">
<file name="gs-collections-code-generator" />
<file name="gs-collections-code-generator-ant" />
<file name="collections-api" />
<file name="collections" />
<file name="collections-testutils" />
<file name="gs-collections-forkjoin" />
</filelist>
<filelist id="all-modules">
<file name="gs-collections-code-generator" />
<file name="gs-collections-code-generator-ant" />
<file name="collections-api" />
<file name="collections" />
<file name="collections-testutils" />
<file name="gs-collections-forkjoin" />
<file name="unit-tests" />
<file name="scala-unit-tests" />
<file name="serialization-tests" />
<file name="acceptance-tests" />
</filelist>
<macrodef name="sub-target">
<attribute name="target" default="test" />
<sequential>
<subant target="@{target}" verbose="true" inheritall="true">
<filelist refid="modules" />
</subant>
</sequential>
</macrodef>
<macrodef name="sub-target-all">
<attribute name="target" default="test" />
<sequential>
<subant target="@{target}" verbose="true" inheritall="true">
<filelist refid="all-modules" />
</subant>
</sequential>
</macrodef>
</project>
|