* Build: Move all dependencies to top-level build.xml,

so each sub-build.xml is only executed once (true DAG)
This commit is contained in:
zzz
2010-11-28 03:56:56 +00:00
parent a59e52bff5
commit 612d06bd53
10 changed files with 73 additions and 58 deletions

View File

@ -3,9 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar, war" />
<target name="builddep">
<ant dir="../../jetty/" target="build" />
<ant dir="../../streaming/java/" target="build" />
<!-- streaming will build ministreaming and core -->
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />

View File

@ -3,9 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar, war" />
<target name="builddep">
<ant dir="../../ministreaming/java/" target="build" />
<ant dir="../../jetty/" target="build" />
<!-- ministreaming will build core -->
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />

View File

@ -3,7 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../../core/java/" target="build" />
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />
@ -45,9 +45,7 @@
<delete dir="./build" />
</target>
<target name="cleandep" depends="clean">
<ant dir="../../../core/java/" target="cleandep" />
</target>
<target name="distclean" depends="clean">
<ant dir="../../../core/java/" target="distclean" />
</target>
</project>

View File

@ -3,12 +3,10 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../../router/java/" target="build" />
<ant dir="../../systray/java/" target="build" />
<!-- router will build core -->
<!-- run from top level build.xml to get dependencies built -->
</target>
<target name="prepare">
<ant dir="../../jetty/" target="build" />
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />
@ -235,13 +233,7 @@
<delete file="../jsp/web-out.xml" />
</target>
<target name="cleandep" depends="clean">
<!-- router will clean core -->
<ant dir="../../../router/java/" target="cleandep" />
<ant dir="../../systray/java/" target="cleandep" />
</target>
<target name="distclean" depends="clean">
<!-- router will clean core -->
<ant dir="../../../router/java/" target="distclean" />
<ant dir="../../systray/java/" target="distclean" />
</target>
</project>

View File

@ -3,9 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../ministreaming/java/" target="build" />
<ant dir="../../streaming/java/" target="build" />
<!-- ministreaming will build core -->
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />
@ -69,13 +67,7 @@
<delete dir="./build" />
</target>
<target name="cleandep" depends="clean">
<!-- ministreaming will clean core -->
<ant dir="../../ministreaming/java/" target="distclean" />
<ant dir="../../streaming/java/" target="distclean" />
</target>
<target name="distclean" depends="clean">
<!-- ministreaming will clean core -->
<ant dir="../../ministreaming/java/" target="distclean" />
<ant dir="../../streaming/java/" target="distclean" />
</target>
</project>

View File

@ -3,8 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../ministreaming/java/" target="build" />
<!-- ministreaming will build core -->
<!-- run from top level build.xml to get dependencies built -->
</target>
<condition property="depend.available">
<typefound name="depend" />
@ -62,11 +61,7 @@
<delete dir="./build" />
</target>
<target name="cleandep" depends="clean">
<!-- ministreaming will clean core -->
<ant dir="../../ministreaming/java/" target="distclean" />
</target>
<target name="distclean" depends="clean">
<!-- ministreaming will clean core -->
<ant dir="../../ministreaming/java/" target="distclean" />
</target>
</project>

View File

@ -3,7 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../jetty/" target="build" />
<!-- run from top level build.xml to get dependencies built -->
</target>
<property name="javac.compilerargs" value="" />
<target name="compile">

View File

@ -3,7 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../../core/java/" target="build" />
<!-- run from top level build.xml to get dependencies built -->
</target>
<property name="javac.compilerargs" value="" />
<target name="compile">
@ -55,10 +55,7 @@
<delete dir="./build" />
</target>
<target name="cleandep" depends="clean">
<!-- router will clean core -->
<ant dir="../../../core/java/" target="cleandep" />
</target>
<target name="distclean" depends="clean">
<ant dir="../../../core/java/" target="distclean" />
</target>
</project>

View File

@ -62,33 +62,79 @@
<target name="build2" depends="builddep, jar, buildWEB" />
<target name="buildSmall" depends="builddepSmall, jarSmall, buildWEB" />
<target name="buildclean" depends="distclean, build" />
<target name="builddep" depends="builddepSmall">
<!-- build *everything* here, but only once -->
<target name="builddep" depends="builddepSmall, buildBOB, buildSAM, buildSusiMail, buildSusiDNS, buildI2PSnark" />
<target name="builddepSmall" depends="buildrouter, buildSystray, buildRouterConsole, buildStreaming, buildI2PTunnel, buildAddressbook" />
<!-- start of buildX, one for each sub-build.xml.
Do not put ant tasks in the sub-build.xmls anymore,
so the build will go faster.
-->
<!-- TODO remove I2PTunnel dependency in BOB -->
<target name="buildBOB" depends="buildStreaming, buildI2PTunnel" >
<ant dir="apps/BOB/" target="jar" />
</target>
<target name="buildSAM" depends="buildStreaming" >
<ant dir="apps/sam/java/" target="jar" />
</target>
<target name="buildSusiMail" depends="buildCore, buildJetty" >
<ant dir="apps/susimail/" target="war" />
</target>
<target name="buildSusiDNS" depends="buildCore, buildJetty" >
<ant dir="apps/susidns/src" target="all" />
</target>
<target name="buildI2PSnark" depends="buildStreaming, buildJetty" >
<ant dir="apps/i2psnark/java/" target="war" />
</target>
<target name="builddepSmall">
<ant dir="core/java/" target="jar" />
<ant dir="router/java/" target="jar" />
<ant dir="apps/systray/java/" target="jar" />
<ant dir="apps/routerconsole/java/" target="jar" />
<ant dir="apps/ministreaming/java/" target="jar" />
<ant dir="apps/streaming/java/" target="jar" />
<ant dir="apps/i2ptunnel/java/" target="build" />
<target name="buildAddressbook" depends="buildCore, buildJetty" >
<ant dir="apps/addressbook/" target="war" />
</target>
<target name="buildrouter">
<ant dir="core/java/" target="jar" />
<target name="buildI2PTunnel" depends="buildStreaming, buildJetty" >
<ant dir="apps/i2ptunnel/java/" target="build" />
</target>
<target name="buildRouterConsole" depends="buildrouter, buildSystray, buildJetty" >
<ant dir="apps/routerconsole/java/" target="jar" />
</target>
<target name="buildJetty" >
<ant dir="apps/jetty" target="build" />
</target>
<target name="buildSystray" depends="buildCore" >
<ant dir="apps/systray/java/" target="jar" />
</target>
<target name="buildStreaming" depends="buildMinistreaming" >
<ant dir="apps/streaming/java/" target="jar" />
</target>
<target name="buildMinistreaming" depends="buildCore" >
<ant dir="apps/ministreaming/java/" target="jar" />
</target>
<target name="buildRouter" depends="buildrouter" />
<target name="buildrouter" depends="buildCore" >
<ant dir="router/java/" target="jar" />
<copy file="core/java/build/i2p.jar" todir="build/" />
<copy file="router/java/build/router.jar" todir="build/" />
</target>
<target name="buildWEB">
<ant dir="apps/jetty" target="ensureJettylib" />
<ant dir="apps/routerconsole/java" target="build" />
<target name="buildCore" >
<ant dir="core/java/" target="jar" />
<copy file="core/java/build/i2p.jar" todir="build/" />
</target>
<!-- end of sub-build.xml targets -->
<target name="buildWEB" depends="buildRouterConsole" >
<copy file="apps/routerconsole/java/build/routerconsole.jar" todir="build/" />
<copy file="apps/routerconsole/java/build/routerconsole.war" todir="build/" />
<copy file="apps/jetty/jettylib/org.mortbay.jetty.jar" todir="build/" />
@ -98,6 +144,7 @@
<copy file="apps/jetty/jettylib/commons-el.jar" todir="build/" />
<copy file="apps/jetty/jettylib/javax.servlet.jar" todir="build/" />
</target>
<target name="buildexe">
<condition property="noExe">
<os arch="x86_64" />

View File

@ -3,7 +3,7 @@
<target name="all" depends="clean, build" />
<target name="build" depends="builddep, jar" />
<target name="builddep">
<ant dir="../../core/java/" target="build" />
<!-- run from top level build.xml to get dependencies built -->
</target>
<target name="builddeptest">
<ant dir="../../core/java/" target="jarTest" />
@ -131,9 +131,7 @@
<delete dir="./build" />
</target>
<target name="cleandep" depends="clean">
<ant dir="../../core/java/" target="cleandep" />
</target>
<target name="distclean" depends="clean">
<ant dir="../../core/java/" target="distclean" />
</target>
</project>