1<?xml version="1.0"?>
2
3<!-- ======================================================================= -->
4<!-- ANT-Makefile for JCalendar (C) 2009 Kai Toedter                         -->
5<!-- ======================================================================= -->
6
7<project name="JCalendar" default="main" basedir="..">
8
9	<!-- ===================================================================== -->
10	<!-- PROPERTIES                                                            -->
11	<!-- ===================================================================== -->
12
13	<property name="version" value="1.3.3" />
14	<property name="modified" value="05/01/09" />
15	<property name="copyright.year" value="1999 - 2009" />
16
17	<property name="name" value="jcalendar" />
18	<property name="Name" value="JCalendar" />
19
20	<property name="classpath" value="" />
21
22	<property name="jcalendar.home" value=".." />
23
24	<property name="bin.dir" value="bin" />
25	<property name="build.dir" value="build" />
26	<property name="dist.dir" value="dist" />
27	<property name="doc.dir" value="doc" />
28	<property name="javadoc.dir" value="${doc.dir}/api" />
29	<property name="lib.dir" value="lib" />
30	<property name="src.dir" value="src" />
31
32	<!-- ===================================================================== -->
33	<!-- COMPILER: classic (JDK 1.1 & 1.2), modern or jikes                    -->
34	<!-- ===================================================================== -->
35	<property name="build.compiler" value="modern" />
36
37	<property name="manifest" value="src/jcalendar.manifest" />
38	<property name="packages"
39	          value="com.toedter.calendar.*,com.toedter.components.*, com.toedter.calendar.demo.*"
40	/>
41
42	<!-- ===================================================================== -->
43	<!-- MAIN                                                                  -->
44	<!-- ===================================================================== -->
45
46	<target name="main" depends="compile">
47	</target>
48
49	<!-- ===================================================================== -->
50	<!-- PREPARE BUILD                                                         -->
51	<!-- ===================================================================== -->
52
53	<target name="prepare" depends="clean">
54		<mkdir dir="${build.dir}" />
55	</target>
56
57	<!-- ===================================================================== -->
58	<!-- COMPILE                                                               -->
59	<!-- ===================================================================== -->
60
61	<target name="compile" depends="prepare">
62		<copy todir="${build.dir}">
63			<fileset dir="${src.dir}">
64				<patternset>
65					<include name="**/*.gif" />
66					<include name="**/classlist" />
67				</patternset>
68			</fileset>
69		</copy>
70		<javac srcdir="${src.dir}"
71		       destdir="${build.dir}"
72		       classpath="${classpath};lib/looks-1.3.2.jar"
73		       debug="off"
74		       deprecation="on"
75		       optimize="on"
76		       source="1.4"
77		/>
78	</target>
79
80	<!-- ===================================================================== -->
81	<!-- JAR FILE                                                              -->
82	<!-- ===================================================================== -->
83
84	<target name="jar" depends="compile">
85		<mkdir dir="${lib.dir}" />
86		<jar jarfile="${lib.dir}/jcalendar-${version}.jar"
87		     compress="no"
88		     basedir="${build.dir}"
89		     includes="com/**"
90		     manifest="${manifest}"
91		/>
92	</target>
93
94	<!-- ===================================================================== -->
95	<!-- JAVADOC                                                               -->
96	<!-- ===================================================================== -->
97
98	<target name="javadocs" depends="prepare">
99		<mkdir dir="${javadoc.dir}" />
100		<javadoc packagenames="${packages}"
101		         sourcepath="${basedir}/${src.dir}"
102		         classpath=".;lib/looks-1.3.2.jar"
103		         destdir="${javadoc.dir}"
104		         author="true"
105		         version="true"
106		         windowtitle="${Name} API"
107		         doctitle="${Name}"
108		         bottom="Copyright &#169; ${copyright.year} Kai Toedter."
109		/>
110	</target>
111
112	<!-- ===================================================================== -->
113	<!-- DISTRIBUTION                                                          -->
114	<!-- ===================================================================== -->
115
116	<target name="dist" depends="jar, javadocs">
117		<filter token="VERSION" value="${version}" />
118		<filter token="MODIFIED" value="${modified}" />
119		<filter token="COPYRIGHTYEAR" value="${copyright.year}" />
120
121		<delete dir="${dist.dir}" />
122		<mkdir dir="${dist.dir}" />
123		<mkdir dir="${dist.dir}/${bin.dir}" />
124		<mkdir dir="${dist.dir}/${lib.dir}" />
125		<mkdir dir="${dist.dir}/${doc.dir}" />
126		<mkdir dir="${dist.dir}/${src.dir}" />
127
128		<copy todir="${dist.dir}/${src.dir}">
129			<fileset dir="${src.dir}" />
130		</copy>
131		<copy todir="${dist.dir}/${lib.dir}">
132			<fileset dir="${lib.dir}" />
133		</copy>
134		<copy todir="${dist.dir}/${bin.dir}" filtering="yes">
135			<fileset dir="${bin.dir}" />
136		</copy>
137		<copy todir="${dist.dir}/${javadoc.dir}">
138			<fileset dir="${javadoc.dir}" />
139		</copy>
140		<copy todir="${dist.dir}/${doc.dir}/images">
141			<fileset dir="${doc.dir}/images"  />
142		</copy>
143
144		<copy todir="${dist.dir}" filtering="yes">
145			<fileset dir="${basedir}">
146				  <include name="**/*.txt"/>
147				  <exclude name="**/license.txt"/>
148			</fileset>
149		</copy>
150		<copy file="${doc.dir}/license.html"
151		      todir="${dist.dir}/${doc.dir}/"
152		      filtering="no"
153		/>
154		<copy file="${doc.dir}/index.html"
155		      todir="${dist.dir}/${doc.dir}/"
156		      filtering="yes"
157		/>
158		<copy file="${doc.dir}/demo.html"
159		      todir="${dist.dir}/${doc.dir}/"
160		      filtering="yes"
161		/>
162		<copy file="${doc.dir}/style.css"
163		      todir="${dist.dir}/${doc.dir}/"
164		      filtering="no"
165		/>
166
167		<!-- create a zip file -->
168		<zip zipfile="jcalendar-${version}.zip">
169			<zipfileset dir="${dist.dir}">
170				<include name="**" />
171			</zipfileset>
172		</zip>
173	</target>
174
175	<!-- =================================================================== -->
176	<!-- Run Demo                                                            -->
177	<!-- =================================================================== -->
178
179	<target name="runDemo" depends="jar">
180		<echo message="Running JCalendar demo ..." />
181		<java classpath="lib/jcalendar.jar;lib/looks-1.3.2.jar"
182		      classname="com.toedter.calendar.demo.JCalendarDemo"
183		      fork="yes"
184		>
185		</java>
186	</target>
187
188	<!-- =================================================================== -->
189	<!-- CLEAN                                                               -->
190	<!-- =================================================================== -->
191
192	<target name="clean">
193		<delete>
194		    <fileset dir="${lib.dir}" includes="jcalendar*"/>
195		</delete>
196		<delete dir="${build.dir}" />
197		<delete dir="${dist.dir}" />
198		<delete dir="${javadoc.dir}" />
199	</target>
200
201</project>
202
203<!-- End of build.xml -->
204
205