view build.xml @ 10:6a5132431379

Compile for Java 1.5 for better compatibility.
author Mikhail Kryshen <mikhail@kryshen.net>
date Sat, 07 Mar 2009 19:02:36 +0300
parents 6c41a0b43e58
children 992793931a2f
line source
1 <?xml version="1.0"?>
2 <project name="tema" default="dist" basedir=".">
4 <property name="version" value="0.3"/>
6 <property name="src" value="src"/>
7 <property name="build" value="build"/>
8 <property name="dist" value="dist"/>
9 <property name="res" value="res"/>
10 <property name="doc" value="doc"/>
11 <property name="lib" value="${dist}/lib"/>
12 <property name="jar_file" value="tema.jar"/>
14 <property name="ant_jar" value="/usr/share/java/ant.jar"/>
16 <path id="project.libs">
17 <fileset dir="${lib}">
18 <include name="**/*.jar"/>
19 </fileset>
20 </path>
22 <target name="init">
23 <tstamp/>
24 <mkdir dir="${build}"/>
25 </target>
27 <target name="compile" depends="init">
28 <javac srcdir="${src}" destdir="${build}"
29 deprecation="on" optimize="on" debug="on"
30 target="1.5">
31 <compilerarg value="-Xlint:unchecked"/>
32 <classpath refid="project.libs"/>
33 </javac>
35 <copy todir="${build}">
36 <fileset dir="${res}"/>
37 </copy>
38 </target>
40 <target name="dist" depends="compile">
41 <jar jarfile="${dist}/${jar_file}" manifest="${src}/Manifest.mf">
42 <fileset dir="${build}" includes="**/*.class"/>
43 <fileset dir="${build}" includes="**/*.template"/>
44 </jar>
45 </target>
47 <target name="run" depends="compile">
48 <java classname="kryshen.tema.Tema" fork="true">
49 <classpath>
50 <pathelement location="${build}"/>
51 <path refid="project.libs"/>
52 </classpath>
53 </java>
54 </target>
56 <target name="run.demo" depends="compile">
57 <java classname="kryshen.tema.Tema" fork="true">
58 <classpath>
59 <pathelement location="${build}"/>
60 <path refid="project.libs"/>
61 </classpath>
62 <arg value="-demo"/>
63 </java>
64 </target>
66 <target name="doc.manual" depends="dist">
67 <taskdef name="tema"
68 classname="kryshen.tema.ant.TemaTask"
69 classpath="${dist}/tema.jar"/>
71 <tema infile="${doc}/manual/manual.tema"
72 outfile="${doc}/manual/manual.html"
73 basedir="${doc}/manual"/>
74 </target>
76 <target name="doc.api" depends="init">
77 <javadoc destdir="${doc}/api" sourcepath="${src}"
78 packagenames="kryshen.tema.*">
79 <classpath>
80 <path refid="project.libs"/>
81 <pathelement location="${ant_jar}"/>
82 </classpath>
83 </javadoc>
84 </target>
86 <target name="package.tar" depends="dist,doc.manual,doc.api">
87 <tar destfile="${dist}/${ant.project.name}-${version}.tar.gz"
88 compression="gzip">
89 <tarfileset dir="${basedir}"
90 prefix="${ant.project.name}-${version}">
91 <exclude name="${build}/**"/>
92 <exclude name="misc/**"/>
93 <exclude name="test/**"/>
94 <exclude name="nbproject/**"/>
95 <exclude name="${dist}/${ant.project.name}-*.tar.gz"/>
96 <exclude name="${dist}/tema"/>
97 </tarfileset>
98 <tarfileset dir="${basedir}"
99 prefix="${ant.project.name}-${version}"
100 mode="755">
101 <include name="${dist}/tema"/>
102 </tarfileset>
103 </tar>
104 </target>
106 <target name="clean" depends="init">
107 <delete>
108 <fileset dir="${build}" includes="**/*.class"/>
109 </delete>
110 <delete file="${dist}/${jar_file}"/>
111 <delete dir="${doc}/api"/>
112 </target>
114 </project>