forked from eclipse/eclipse-collections
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
113 lines (95 loc) · 4.41 KB
/
build.xml
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
<?xml version="1.0"?>
<!--
~ Copyright (c) 2015 Goldman Sachs.
~ All rights reserved. This program and the accompanying materials
~ are made available under the terms of the Eclipse Public License v1.0
~ and Eclipse Distribution License v. 1.0 which accompany this distribution.
~ The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
~ and the Eclipse Distribution License is available at
~ http://www.eclipse.org/org/documents/edl-v10.php.
-->
<project name="eclipse-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="./eclipse-collections-code-generator/" target="install" />
<subant buildpath="./eclipse-collections-code-generator-ant/" target="install" />
<subant buildpath="./eclipse-collections-api/" target="install" />
<subant buildpath="./eclipse-collections/" target="install" />
<subant buildpath="./eclipse-collections-testutils/" target="install" />
<subant buildpath="./eclipse-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="./eclipse-collections-api/" target="zip" />
<subant buildpath="./eclipse-collections/" target="zip" />
<subant buildpath="./eclipse-collections-testutils/" target="zip" />
<subant buildpath="./eclipse-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="eclipse-collections-code-generator" />
<file name="eclipse-collections-code-generator-ant" />
<file name="eclipse-collections-api" />
<file name="eclipse-collections" />
<file name="eclipse-collections-testutils" />
<file name="eclipse-collections-forkjoin" />
</filelist>
<filelist id="all-modules">
<file name="eclipse-collections-code-generator" />
<file name="eclipse-collections-code-generator-ant" />
<file name="eclipse-collections-api" />
<file name="eclipse-collections" />
<file name="eclipse-collections-testutils" />
<file name="eclipse-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>