samples/preventcyclicdependencies/build.xml
author Jaroslav Tulach <jtulach@netbeans.org>
Sat, 14 Jun 2008 09:55:09 +0200
changeset 128 8ef997796d0a
parent 127 07696c62f340
child 263 7e8e995065c5
permissions -rw-r--r--
Merge: Patrick's fixes
     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <project name="preventcyclicdependencies" default="run" basedir=".">
     3     <target name="clean">
     4         <delete dir="build"/>
     5     </target>
     6     
     7     <target name="compile" depends="build"/>
     8     <target name="build">
     9         <antcall target="-build-one">
    10             <param name="version" value="cyclic"/>
    11         </antcall>
    12         <antcall target="-build-one">
    13             <param name="version" value="test"/>
    14             <param name="cp" location="build/cyclic/classes"/>
    15         </antcall>
    16         <antcall target="-build-one">
    17             <param name="version" value="acyclic1"/>
    18         </antcall>
    19         <antcall target="-build-one">
    20             <param name="version" value="acyclic2"/>
    21             <param name="cp" location="build/acyclic1/classes"/>
    22         </antcall>
    23     </target>
    24     
    25     <target name="run" depends="build">
    26         <echo level="info" message="Running old API with cycles between packages:"/>
    27         <antcall target="-run-one">
    28             <param name="version1" value="cyclic"/>
    29         </antcall>
    30         <echo level="info" message="Running new API without cycles:"/>
    31         <antcall target="-run-one">
    32             <param name="version1" value="acyclic1"/>
    33             <param name="version2" value="acyclic2"/>
    34         </antcall>
    35     </target>
    36 
    37     
    38     <!-- support methods -->
    39     
    40     <target name="-run-one">
    41         <java 
    42             classpath="build/${version1}/classes:build/${version2}/classes:build/test/classes:../libs/dist/org-openide-util.jar" 
    43             classname="org.apidesign.cycles.array.test.Main"
    44             failonerror="true" 
    45         >
    46             <jvmarg value="-ea"/>
    47         </java>
    48     </target>
    49     
    50     <target name="-build-one">
    51         <fail message="You need to specify version number" unless="version"/>
    52         
    53         <mkdir dir="build/${version}/classes"/>
    54         <property name="cp" value=""/>
    55         <javac 
    56             srcdir="src-${version}" 
    57             destdir="build/${version}/classes" 
    58             source="1.5" target="1.5"
    59             debug="true"
    60             classpath="${cp}:../libs/dist/org-openide-util.jar"
    61         />
    62         <copy todir="build/${version}/classes">
    63             <fileset dir="src-${version}">
    64                 <exclude name="**/*.java"/>
    65             </fileset>
    66         </copy>
    67     </target>
    68 </project>