gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
minor: ant build tabs to spaces
[mjc2wsl.git] / build.xml
1 <project name="mjc2wsl" default="all">
2 <property name="java.encoding" value="utf-8" />
3 <taskdef resource="net/sf/antcontrib/antlib.xml">
4 <classpath>
5 <pathelement location="/usr/share/java/"/>
6 </classpath>
7 </taskdef>
9 <property name="mjc2wsl.class.dir" value="bin" />
10 <property name="mjc2wsl.src.dir" value="src" />
11 <property name="mjc2wsl.options" value="" />
13 <property name="compiler.class.dir" value="compiler-bin" />
14 <property name="compiler.src.dir" value="compiler" />
16 <property name="samples.main.dir" value="samples" />
17 <property name="samples.temp.dir" value="samples-temp" />
19 <target name="help">
20 <echo>Possible options:
21 all - build the tool and the compiler and test on the samples
22 build - build the mjc2wsl tool
23 mj-build - build the mj compiler
24 mj-samples - run the mj compiler on the samples (build if needed)
25 </echo>
26 </target>
28 <target name="init">
29 <mkdir dir="${mjc2wsl.class.dir}"/>
30 <mkdir dir="${compiler.class.dir}"/>
31 <mkdir dir="${samples.temp.dir}"/>
32 <copy todir="${samples.temp.dir}">
33 <fileset dir="${samples.main.dir}">
34 <include name="*.mj"/>
35 </fileset>
36 </copy>
37 </target>
39 <target name="build" depends="init">
40 <javac srcdir="${mjc2wsl.src.dir}" destdir="${mjc2wsl.class.dir}" includeAntRuntime='no' />
41 </target>
43 <target name="mj-build" depends="init">
44 <javac srcdir="${compiler.src.dir}" destdir="${compiler.class.dir}" includeAntRuntime='no' />
45 </target>
47 <target name="mj-compile">
48 <echo message="${filename}" />
49 <java classpath="${compiler.class.dir}" classname="Compiler">
50 <arg value="${filename}" />
51 </java>
52 </target>
54 <target name="mj-samples" depends="build">
55 <foreach param="filename" target="mj-compile">
56 <path>
57 <fileset dir='${samples.temp.dir}'>
58 <include name="*.mj"/>
59 </fileset>
60 </path>
61 </foreach>
62 </target>
64 <target name="mj-samples1" depends="mj-build">
65 <!-- simplistic version when antlib (foreach) is not available -->
66 <antcall target="mj-compile">
67 <param name="filename" value="samples-temp/sample.mj" />
68 </antcall>
69 <antcall target="mj-compile">
70 <param name="filename" value="samples-temp/sample1.mj" />
71 </antcall>
72 <antcall target="mj-compile">
73 <param name="filename" value="samples-temp/sample0.mj" />
74 </antcall>
75 </target>
77 <target name="mjc2wsl">
78 <echo message="${filename}" />
79 <java classpath="${mjc2wsl.class.dir}" classname="mjc2wsl">
80 <arg line="${mjc2wsl.options}" />
81 <arg value="${filename}" />
82 </java>
83 </target>
85 <target name="mjc2wsl-samples" depends="build">
86 <foreach param="filename" target="mjc2wsl">
87 <path>
88 <fileset dir='${samples.temp.dir}'>
89 <include name="*.obj"/>
90 </fileset>
91 </path>
92 </foreach>
93 </target>
95 <target name="mjc2wsl-samples1" depends="build">
96 <!-- simplistic version when antlib (foreach) is not available -->
97 <antcall target="mjc2wsl">
98 <param name="filename" value="samples-temp/sample0.obj" />
99 </antcall>
100 </target>
102 <target name="all" depends='mj-samples,mjc2wsl-samples'>
104 </target>
106 <target name="clean" >
107 <delete includeemptydirs="true">
108 <fileset dir=".">
109 <include name="${mjc2wsl.class.dir}/*.class"/>
110 <include name="${compiler.class.dir}/*.class"/>
111 <include name="${samples.temp.dir}/*"/>
112 </fileset>
113 <dirset dir=".">
114 <include name="${mjc2wsl.class.dir}"/>
115 <include name="${compiler.class.dir}"/>
116 <include name="${samples.temp.dir}"/>
117 </dirset>
118 </delete>
119 </target>
121 </project>
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner