Author: nextgens
Date: 2007-11-20 15:43:25 +0000 (Tue, 20 Nov 2007)
New Revision: 15874

Modified:
   trunk/apps/Freemail/build.xml
Log:
Freemail: patch to build.xml from dbkr

Modified: trunk/apps/Freemail/build.xml
===================================================================
--- trunk/apps/Freemail/build.xml       2007-11-20 02:24:42 UTC (rev 15873)
+++ trunk/apps/Freemail/build.xml       2007-11-20 15:43:25 UTC (rev 15874)
@@ -7,6 +7,35 @@
        <property name="deps" location="deps"/>

        <property name="bcdist" value="lcrypto-jdk14-133"/>
+       <property name="freenetjarurl.url" 
value="http://downloads.freenetproject.org/alpha/freenet-testing-latest.jar.url"/>
+       <property name="freenetjarurl.localpath" 
value="${deps}/freenet-testing-latest.jar.url"/>
+       <property name="freenetjar" value="freenet-main.jar"/>
+
+       <target name="freenetjar-check">
+               <available file="${deps}/${freenetjar}" 
property="freenetjar.present" />
+       </target>
+
+       <!-- Fetching the Freenet jar here is far from optimal:
+            Ideally we'd compile against a the freenet jar or class files
+            which the user almost certainly has on their computer already.
+            Unfortunately about the only sensible way of doing this would
+            be with Maven2, and both Freenet and Freemail import code from
+            other projects which would make things difficult and/or ugly.
+       -->
+       <target name="freenetjar-fetch" depends="freenetjar-check" 
unless="freenetjar.present">
+               <echo>
+                       Attempting to fetch Freenet main jar - ant cannot do 
this reliably, so if it fails, delete ${deps}/${freenetjar} and 
${freenetjarurl.localpath} and run ant again.
+               </echo>
+               <mkdir dir="${deps}" />
+               <!-- loadresource directly from an HTTP URL is causing problems 
-->
+               <get src="${freenetjarurl.url}"
+                       dest="${freenetjarurl.localpath}" />
+               <loadfile property="freenetjar.url"
+                       srcFile="${freenetjarurl.localpath}" />
+               <get src="${freenetjar.url}" 
+                       dest="${deps}/${freenetjar}" 
+                       verbose="true" />
+       </target>

        <target name="bouncycastle-check">
                <available file="${deps}/${bcdist}" 
property="bouncycastle-dist.present" />
@@ -30,7 +59,7 @@
                </javac>
        </target>

-       <target name="compile" depends="bouncycastle-compile">
+       <target name="compile" depends="bouncycastle-compile, freenetjar-fetch">
                <mkdir dir="${build}"/>

                <tstamp/>
@@ -39,7 +68,7 @@
                     It makes it much easier to run -->
                <javac srcdir="${src}" destdir="${build}" debug="on" 
optimize="on" source="1.4">
                        <classpath>
-                               <pathelement 
location="${lib}/freenet-cvs-snapshot.jar"/>
+                               <pathelement location="${deps}/${freenetjar}"/>
                        </classpath>
                </javac>
                <copy todir="${build}/freemailgui/text">
@@ -76,11 +105,15 @@
                <delete dir="${lib}"/>
        </target>

-       <target name="squeakyclean">
+       <target name="cleaner">
                <delete dir="${build}"/>
                <delete dir="${lib}"/>
        </target>

+       <target name="squeakyclean" depends="cleaner">
+               <delete dir="${deps}"/>
+       </target>
+
        <target name="distclean" description="Delete everything and restore to 
the original state.">
                <delete dir="${build}"/>
                <delete dir="${lib}"/>


Reply via email to