1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/samples/preventcyclicdependencies/build.xml Sat Jun 14 09:53:48 2008 +0200
1.3 @@ -0,0 +1,67 @@
1.4 +<?xml version="1.0" encoding="UTF-8"?>
1.5 +<project name="preventcyclicdependencies" default="run" basedir=".">
1.6 + <target name="clean">
1.7 + <delete dir="build"/>
1.8 + </target>
1.9 +
1.10 + <target name="build">
1.11 + <antcall target="-build-one">
1.12 + <param name="version" value="cyclic"/>
1.13 + </antcall>
1.14 + <antcall target="-build-one">
1.15 + <param name="version" value="test"/>
1.16 + <param name="cp" location="build/cyclic/classes"/>
1.17 + </antcall>
1.18 + <antcall target="-build-one">
1.19 + <param name="version" value="acyclic1"/>
1.20 + </antcall>
1.21 + <antcall target="-build-one">
1.22 + <param name="version" value="acyclic2"/>
1.23 + <param name="cp" location="build/acyclic1/classes"/>
1.24 + </antcall>
1.25 + </target>
1.26 +
1.27 + <target name="run" depends="build">
1.28 + <echo level="info" message="Running old API with cycles between packages:"/>
1.29 + <antcall target="-run-one">
1.30 + <param name="version1" value="cyclic"/>
1.31 + </antcall>
1.32 + <echo level="info" message="Running new API without cycles:"/>
1.33 + <antcall target="-run-one">
1.34 + <param name="version1" value="acyclic1"/>
1.35 + <param name="version2" value="acyclic2"/>
1.36 + </antcall>
1.37 + </target>
1.38 +
1.39 +
1.40 + <!-- support methods -->
1.41 +
1.42 + <target name="-run-one">
1.43 + <java
1.44 + classpath="build/${version1}/classes:build/${version2}/classes:build/test/classes:../libs/dist/org-openide-util.jar"
1.45 + classname="org.apidesign.cycles.array.test.Main"
1.46 + failonerror="true"
1.47 + >
1.48 + <jvmarg value="-ea"/>
1.49 + </java>
1.50 + </target>
1.51 +
1.52 + <target name="-build-one">
1.53 + <fail message="You need to specify version number" unless="version"/>
1.54 +
1.55 + <mkdir dir="build/${version}/classes"/>
1.56 + <property name="cp" value=""/>
1.57 + <javac
1.58 + srcdir="src-${version}"
1.59 + destdir="build/${version}/classes"
1.60 + source="1.5" target="1.5"
1.61 + debug="true"
1.62 + classpath="${cp}"
1.63 + />
1.64 + <copy todir="build/${version}/classes">
1.65 + <fileset dir="src-${version}">
1.66 + <exclude name="**/*.java"/>
1.67 + </fileset>
1.68 + </copy>
1.69 + </target>
1.70 +</project>