From c7bb2e8f76e82a23b36dac23a61571f6c7698bd3 Mon Sep 17 00:00:00 2001
From: zzz <zzz@mail.i2p>
Date: Fri, 14 Nov 2008 14:48:08 +0000
Subject: [PATCH] * build files:    - Don't die if depend not available    -
 Only verify Jetty hash once    - Add streaming lib tests to depends task

---
 apps/addressbook/build.xml        | 5 ++++-
 apps/i2psnark/java/build.xml      | 5 ++++-
 apps/i2ptunnel/java/build.xml     | 5 ++++-
 apps/jetty/build.xml              | 7 ++++++-
 apps/ministreaming/java/build.xml | 5 ++++-
 apps/routerconsole/java/build.xml | 9 +++++++--
 apps/sam/java/build.xml           | 5 ++++-
 apps/streaming/java/build.xml     | 7 +++++--
 core/java/build.xml               | 5 ++++-
 router/java/build.xml             | 5 ++++-
 10 files changed, 46 insertions(+), 12 deletions(-)

diff --git a/apps/addressbook/build.xml b/apps/addressbook/build.xml
index c4b214feb7..b28cec2dcc 100644
--- a/apps/addressbook/build.xml
+++ b/apps/addressbook/build.xml
@@ -19,7 +19,10 @@
 
 	<target name="distclean" depends="clean" />
 
-        <target name="depend">
+        <condition property="depend.available">
+            <typefound name="depend" />
+        </condition>
+        <target name="depend" if="depend.available">
             <depend
                 cache="../../build"
                 srcdir="${src}"
diff --git a/apps/i2psnark/java/build.xml b/apps/i2psnark/java/build.xml
index 0a882af6d2..02eee0aabc 100644
--- a/apps/i2psnark/java/build.xml
+++ b/apps/i2psnark/java/build.xml
@@ -7,7 +7,10 @@
         <ant dir="../../streaming/java/" target="build" />
 	<!-- streaming will build ministreaming and core -->
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
             srcdir="./src" 
diff --git a/apps/i2ptunnel/java/build.xml b/apps/i2ptunnel/java/build.xml
index 6db84dbf34..635cad2e44 100644
--- a/apps/i2ptunnel/java/build.xml
+++ b/apps/i2ptunnel/java/build.xml
@@ -7,7 +7,10 @@
         <ant dir="../../jetty/" target="build" />
 	<!-- ministreaming will build core -->
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
             srcdir="./src" 
diff --git a/apps/jetty/build.xml b/apps/jetty/build.xml
index 13d3f92e07..aaa9783549 100644
--- a/apps/jetty/build.xml
+++ b/apps/jetty/build.xml
@@ -5,6 +5,7 @@
     <property name="jetty.md5" value="a61adc832be6baf2678935506743cfc3" />
     <property name="jetty.url" value="http://dist.codehaus.org/jetty/jetty-5.1.x/jetty-5.1.12.zip" />
     <property name="jetty.filename" value="jetty-5.1.12.zip" />
+    <property name="verified.filename" value="verified.txt" />
 
     <target name="all" depends="build" />
 
@@ -41,7 +42,9 @@
         <get src="${jetty.url}" verbose="true" dest="${jetty.filename}" />
     </target>
 
-    <target name="verifyJettylib" >
+    <uptodate property="verified.already" srcfile="${jetty.filename}" targetfile="${verified.filename}" />
+
+    <target name="verifyJettylib" unless="verified.already" >
         <condition property="jetty.zip.verified" >
             <and>
                 <checksum file="${jetty.filename}" algorithm="SHA" property="${jetty.sha1}" />
@@ -55,6 +58,7 @@
                 </not>
             </condition>
         </fail>
+        <touch file="${verified.filename}" />
     </target>
 
     <target name="extractJettylib" unless="jetty.zip.extracted" >
@@ -97,6 +101,7 @@
     </target>    
     <target name="clean" >
         <delete dir="./build" />
+        <delete file="${verified.filename}" />
     </target>    
     <target name="cleandep" depends="clean" />
     <target name="distclean" depends="clean">
diff --git a/apps/ministreaming/java/build.xml b/apps/ministreaming/java/build.xml
index 72a65d89c5..48920deefe 100644
--- a/apps/ministreaming/java/build.xml
+++ b/apps/ministreaming/java/build.xml
@@ -5,7 +5,10 @@
     <target name="builddep">
         <ant dir="../../../core/java/" target="build" />
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
             srcdir="./src" 
diff --git a/apps/routerconsole/java/build.xml b/apps/routerconsole/java/build.xml
index cea75a248c..00168963bf 100644
--- a/apps/routerconsole/java/build.xml
+++ b/apps/routerconsole/java/build.xml
@@ -10,7 +10,10 @@
     <target name="prepare">
         <ant dir="../../jetty/" target="build" />
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
             srcdir="./src" 
@@ -27,6 +30,8 @@
                 <pathelement location="../../jrobin/jrobin-1.4.0.jar" />
             </classpath>
         </depend>
+    </target>
+    <target name="dependVersion">
         <!-- Force the dependency on the RouterVersion as depend doesn't recognize constant changes  -->
         <dependset>
              <srcfilelist dir="." files="../../../router/java/build/obj/net/i2p/router/RouterVersion.class" />
@@ -35,7 +40,7 @@
              <targetfilelist dir="." files="build/obj/net/i2p/router/web/UpdateHandler.class" />
         </dependset>
     </target>
-    <target name="compile" depends="prepare, depend">
+    <target name="compile" depends="prepare, depend, dependVersion">
         <mkdir dir="./build" />
         <mkdir dir="./build/obj" />
         <javac 
diff --git a/apps/sam/java/build.xml b/apps/sam/java/build.xml
index c0eab67a35..5f48bff98d 100644
--- a/apps/sam/java/build.xml
+++ b/apps/sam/java/build.xml
@@ -6,7 +6,10 @@
         <ant dir="../../ministreaming/java/" target="build" />
 	<!-- ministreaming will build core -->
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
             srcdir="./src" 
diff --git a/apps/streaming/java/build.xml b/apps/streaming/java/build.xml
index 5c79f97cc8..568367033b 100644
--- a/apps/streaming/java/build.xml
+++ b/apps/streaming/java/build.xml
@@ -6,10 +6,13 @@
         <ant dir="../../ministreaming/java/" target="build" />
 	<!-- ministreaming will build core -->
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../../build"
-            srcdir="./src" 
+            srcdir="./src:./test" 
             destdir="./build/obj" >
             <!-- Depend on classes instead of jars where available -->
             <classpath>
diff --git a/core/java/build.xml b/core/java/build.xml
index 24b7a77bcd..28adbf9df2 100644
--- a/core/java/build.xml
+++ b/core/java/build.xml
@@ -5,7 +5,10 @@
     <target name="builddep">
         <!-- noop, since the core doesnt depend on anything -->
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../build"
             srcdir="./src" 
diff --git a/router/java/build.xml b/router/java/build.xml
index b6c9281aa4..95878e468f 100644
--- a/router/java/build.xml
+++ b/router/java/build.xml
@@ -8,7 +8,10 @@
     <target name="builddeptest">
         <ant dir="../../core/java/" target="jarTest" />
     </target>
-    <target name="depend">
+    <condition property="depend.available">
+        <typefound name="depend" />
+    </condition>
+    <target name="depend" if="depend.available">
         <depend
             cache="../../build"
             srcdir="./src" 
-- 
GitLab