| OLD | NEW |
| (Empty) |
| 1 <!-- | |
| 2 Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | |
| 3 for details. All rights reserved. Use of this source code is governed by a | |
| 4 BSD-style license that can be found in the LICENSE file. | |
| 5 --> | |
| 6 <project default="dist"> | |
| 7 <import file="sources.xml"/> | |
| 8 <import file="test_sources.xml"/> | |
| 9 | |
| 10 <!-- | |
| 11 The file build.properties does not exist. If provided, properties can be cus
tomized. | |
| 12 --> | |
| 13 <property file="build.properties" /> | |
| 14 | |
| 15 <!-- | |
| 16 Configuration properties. | |
| 17 --> | |
| 18 <property name="build.dir" value="out"/> | |
| 19 | |
| 20 <property name="build.classes.dir" value="${build.dir}/classes"/> | |
| 21 | |
| 22 <property name="build.test.classes.dir" value="${build.dir}/test/classes"/> | |
| 23 | |
| 24 <property name="dart_analyzer.jar" value="${build.dir}/dart_analyzer.jar"/> | |
| 25 | |
| 26 <property name="dist.dir" value="${build.dir}/dist"/> | |
| 27 | |
| 28 <property name="test.report.dir" value="${build.dir}/test"/> | |
| 29 | |
| 30 <property name="third_party.dir" value="../third_party"/> | |
| 31 | |
| 32 <property name="test_py" location="../tools/test.py"/> | |
| 33 | |
| 34 <!-- | |
| 35 Define buildtime and runtime classpaths. | |
| 36 --> | |
| 37 <path id="classpath.compile"> | |
| 38 <pathelement location="${third_party.dir}/args4j/2.0.12/args4j-2.0.12.jar"/> | |
| 39 <pathelement location="${third_party.dir}/guava/r09/guava-r09.jar"/> | |
| 40 <pathelement location="${third_party.dir}/json/r2_20080312/json.jar"/> | |
| 41 </path> | |
| 42 | |
| 43 <path id="classpath.runtime"> | |
| 44 <path refid="classpath.compile"/> | |
| 45 </path> | |
| 46 | |
| 47 <path id="classpath.compile.tests"> | |
| 48 <path refid="classpath.compile"/> | |
| 49 <pathelement location="${build.classes.dir}"/> | |
| 50 <pathelement location="${third_party.dir}/junit/v4_8_2/junit.jar"/> | |
| 51 </path> | |
| 52 | |
| 53 <path id="classpath.run.tests"> | |
| 54 <path refid="classpath.compile.tests"/> | |
| 55 <pathelement location="${build.test.classes.dir}"/> | |
| 56 <pathelement location="${third_party.dir}/hamcrest/v1_3/hamcrest-core-1.3.0R
C2.jar"/> | |
| 57 <pathelement location="${third_party.dir}/hamcrest/v1_3/hamcrest-generator-1
.3.0RC2.jar"/> | |
| 58 <pathelement location="${third_party.dir}/hamcrest/v1_3/hamcrest-integration
-1.3.0RC2.jar"/> | |
| 59 <pathelement location="${third_party.dir}/hamcrest/v1_3/hamcrest-library-1.3
.0RC2.jar"/> | |
| 60 <pathelement location="${third_party.dir}/fest/fest-util-1.1.6.jar"/> | |
| 61 <pathelement location="${third_party.dir}/fest/fest-assert-1.4.jar"/> | |
| 62 </path> | |
| 63 | |
| 64 <target name="compile" description="Compiles all of the java source and copies
resources to the classes directory."> | |
| 65 <!-- | |
| 66 Ensure the necessary subdirectories exist. | |
| 67 --> | |
| 68 <mkdir dir="${build.classes.dir}"/> | |
| 69 | |
| 70 <javac destdir="${build.classes.dir}" | |
| 71 sourcepath="" | |
| 72 srcdir="java" | |
| 73 includes="${java_sources}" | |
| 74 fork="true" | |
| 75 debug="true"> | |
| 76 <classpath refid="classpath.compile"/> | |
| 77 </javac> | |
| 78 <!-- | |
| 79 Copy all non-java resources. | |
| 80 --> | |
| 81 <copy todir="${build.classes.dir}"> | |
| 82 <filelist refid="java_resources"/> | |
| 83 </copy> | |
| 84 </target> | |
| 85 | |
| 86 <!-- | |
| 87 We rely on GYP to call these targets when the dart_analyzer dependencies cha
nge, hence this | |
| 88 ant file cannot be used standalone. | |
| 89 --> | |
| 90 <target name="compile-tests" depends="compile" description="Compiles all of th
e java tests and copies the resources to the test classes directory." > | |
| 91 <mkdir dir="${build.test.classes.dir}"/> | |
| 92 <javac destdir="${build.test.classes.dir}" | |
| 93 sourcepath="" | |
| 94 srcdir="javatests" | |
| 95 includes="${javatests_sources}" | |
| 96 excludes="com/google/dart/compiler/vm/**" | |
| 97 fork="true" | |
| 98 debug="true"> | |
| 99 <classpath refid="classpath.compile.tests"/> | |
| 100 </javac> | |
| 101 <!-- | |
| 102 Copy the non-java resources. | |
| 103 --> | |
| 104 <copy todir="${build.test.classes.dir}"> | |
| 105 <filelist refid="javatests_resources"/> | |
| 106 </copy> | |
| 107 </target> | |
| 108 | |
| 109 <target name="dart_analyzer.jar" depends="compile" | |
| 110 description="Creates a jar for dart analyzer w/o bundling dependencies."> | |
| 111 <jar destfile="${dart_analyzer.jar}" basedir="${build.classes.dir}" | |
| 112 manifest="dart_analyzer.mf"/> | |
| 113 </target> | |
| 114 | |
| 115 <target name="dist" depends="dart_analyzer.jar" | |
| 116 description="Creates a directory with a standalone distribution."> | |
| 117 <!-- | |
| 118 Ensure the necessary subdirectories exist. | |
| 119 --> | |
| 120 <mkdir dir="${dist.dir}/bin"/> | |
| 121 <mkdir dir="${dist.dir}/util"/> | |
| 122 <mkdir dir="${dist.dir}/util/analyzer"/> | |
| 123 | |
| 124 <!-- | |
| 125 Copy the dart jar to the lib folder. | |
| 126 --> | |
| 127 <copy file="${dart_analyzer.jar}" todir="${dist.dir}/util/analyzer"/> | |
| 128 | |
| 129 <!-- | |
| 130 Re-root the classpaths from third_party into the library folder of the dis
tro. | |
| 131 --> | |
| 132 <pathconvert property="analyzer.classpath.runtime.unix" targetos="unix" refi
d="classpath.runtime"> | |
| 133 <regexpmapper from="${third_party.dir}/(.*)" to="$DART_ANALYZER_LIBS/\1"/> | |
| 134 </pathconvert> | |
| 135 | |
| 136 <copy file="scripts/dart_analyzer.sh" tofile="${dist.dir}/bin/dart_analyzer"
> | |
| 137 <filterset> | |
| 138 <filter token="CLASSPATH" value="$DART_ANALYZER_LIBS/dart_analyzer.jar:$
{analyzer.classpath.runtime.unix}"/> | |
| 139 </filterset> | |
| 140 </copy> | |
| 141 <chmod file="${dist.dir}/bin/dart_analyzer" perm="a+rx"/> | |
| 142 | |
| 143 <!-- | |
| 144 TODO: The following files are not strictly due to dist, move them out. | |
| 145 --> | |
| 146 <copy todir="${build.dir}"> | |
| 147 <fileset dir="scripts"> | |
| 148 <include name="analyzer_metrics.sh"/> | |
| 149 </fileset> | |
| 150 <filterset> | |
| 151 <filter token="CLASSPATH" value="$DART_ANALYZER_LIBS/dart_analyzer.jar:$
{analyzer.classpath.runtime.unix}"/> | |
| 152 </filterset> | |
| 153 </copy> | |
| 154 <chmod file="${build.dir}/analyzer_metrics.sh" perm="a+rx"/> | |
| 155 | |
| 156 <!-- | |
| 157 Copy of all of the dart anayzer dependencies to the library folder. | |
| 158 --> | |
| 159 <copy todir="${dist.dir}/util/analyzer"> | |
| 160 <path refid="classpath.runtime"/> | |
| 161 <regexpmapper from="${third_party.dir}/(.*)" to="\1"/> | |
| 162 </copy> | |
| 163 </target> | |
| 164 | |
| 165 <target name="clean" description="Deletes the build output directory."> | |
| 166 <delete dir="${build.dir}"/> | |
| 167 <delete dir="${dist.dir}"/> | |
| 168 </target> | |
| 169 | |
| 170 <target name="tests.jar" depends="compile-tests"> | |
| 171 <jar destfile="${build.dir}/tests.jar" basedir="${build.test.classes.dir}"/> | |
| 172 </target> | |
| 173 </project> | |
| OLD | NEW |