001 <?xml version="1.0"?>
002
003 <!--
004 Copyright 2004 Sun Microsystems, Inc. All rights reserved.
005 SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
006 -->
007
008 <project name="javainstaller2" default="build" basedir=".">
009
010 <!-- build output directory -->
011 <property name="name" value="JavaSetup"/>
012 <property name="out" value="build"/>
013 <property name="classes.dir" value="classes"/>
014 <property name="source.dir" location="${basedir}/src/${name}"/>
015 <property name="build.dir" location="${out}/misc"/>
016 <property name="dist.dir" location="${out}/bin"/>
017 <property name="compile.debug" value="true"/>
018 <property name="compile.optimize" value="false"/>
019 <property name="lib.dir" location="{$basedir}/lib"/>
020 <property name="verbose" value="false"/>
021 <property name="javainstaller.jar.file" location="{$basedir}/lib"/>
022
023 <!-- MAIN TARGET -->
024 <target name="build" depends="prepare, info_uptodate, info_notuptodate, compile-javainstaller, jar-javainstaller, clean">
025 <echo message="Done"/>
026 </target>
027
028 <!-- INITIALIZATION TASKS -->
029 <target name="init">
030 <!-- up to date checks -->
031 <uptodate property="jarFile.uptodate" targetfile="${dist.dir}/${name}.jar">
032 <srcfiles dir="${source.dir}" includes="**/*.gif,**/*.png,**/*.java"/>
033 <srcfiles dir="${build.dir}" includes="**/*.properties"/>
034 </uptodate>
035 </target>
036
037 <target name="prepare" depends="init" unless="jarFile.uptodate">
038 <mkdir dir="${build.dir}"/>
039 <mkdir dir="${build.dir}/${classes.dir}"/>
040 <mkdir dir="${build.dir}/${classes.dir}/${name}"/>
041 <mkdir dir="${dist.dir}"/>
042 </target>
043
044 <!-- show information about current sub target in recursive builds -->
045 <target name="info_uptodate" depends="init" if="jarFile.uptodate">
046 <tstamp prefix="start"/>
047 <echo message="--------------------------------------------------------------------------------" />
048 <echo message="Nothing to do. ${dist.dir}/${name}.jar is up to date."/>
049 <echo message="--------------------------------------------------------------------------------" />
050 </target>
051
052 <!-- show information about current sub target in recursive builds -->
053 <target name="info_notuptodate" depends="init" unless="jarFile.uptodate">
054 <tstamp prefix="start"/>
055 <echo message="--------------------------------------------------------------------------------" />
056 <echo message="Source dir: ${source.dir}"/>
057 <echo message="Build dir: ${build.dir}"/>
058 <echo message="Dist dir: ${dist.dir}"/>
059 <echo message="Debug is ${debug}"/>
060 <echo message="--------------------------------------------------------------------------------" />
061 </target>
062
063 <target name="compile-javainstaller" depends="prepare" unless="jarFile.uptodate">
064 <javac srcdir="${source.dir}" source="1.4" target="1.4"
065 destdir="${build.dir}/${classes.dir}/${name}"
066 debug="${compile.debug}"
067 optimize="${compile.optimize}">
068 </javac>
069 <copy todir="${build.dir}/${classes.dir}/${name}/org/openoffice/setup">
070 <fileset dir="${build.dir}" includes="*.properties"/>
071 </copy>
072 <copy todir="${build.dir}/${classes.dir}/${name}/org/openoffice/setup/Icons">
073 <fileset dir="${source.dir}/org/openoffice/setup/Icons" includes="*.gif,*.png"/>
074 </copy>
075 </target>
076
077 <target name="jar-javainstaller" depends="compile-javainstaller" unless="jarFile.uptodate">
078 <jar file="${dist.dir}/${name}.jar">
079 <fileset dir="${build.dir}/${classes.dir}/${name}" includes="**/*"/>
080 <manifest>
081 <attribute name="Main-Class" value="org.openoffice.setup.Main"/>
082 </manifest>
083 </jar>
084 </target>
085
086 <!-- CLEAN UP OUTPUT TREES -->
087 <target name="clean" unless="jarFile.uptodate">
088 <!-- <delete dir="${build.dir}"/> -->
089 </target>
090
091 <!-- execution section -->
092 <target name="run" depends="jar-javainstaller">
093 <echo message="Starting: java -jar ${dist.dir}/${name}.jar" />
094 <java jar="${dist.dir}/${name}.jar" fork="true"/>
095 <!-- </java> -->
096 </target>
097
098 <target name="debug" depends="jar-javainstaller">
099 <echo message="Starting for debugging: java -jar ${dist.dir}/${name}.jar" />
100 <java jar="${dist.dir}/${name}.jar" fork="true"/>
101 <!-- </java> -->
102 </target>
103
104
105 </project>