Am 10.01.2007 um 18:48 schrieb Kieran Kelleher:
> Any pointers on what kind of changes I would need to make to
> build.xml to make this happen?
You could build to ~/Roots and use the frameworks from there.
What I do is to check out Wonder as a directory:
cd; mkdir Wonder; cvs -q -d:ext:anj..onder.cvs.sourceforge.net:/
cvsroot/wonder checkout Wonder
then import the frameworks from there into the workspace, leaving
them where they are. Now to build you can simply do
cd ~/Wonder; ant frameworks
You should be able to do this from the build.xml of your app,
probably by adding an extra target for this you can call at your
convenience.
Now you change the build.xml to use these frameworks, set their embed
= true and you should be set. Alternately, and when your project has
the same structure as the Wonder apps or frameworks, you can provide
a MyApp/build.projerties with all the options outlined in ~/Wonder/
Build/build/generic.xml in your top-level build file. One of mine
looks like the one below. Note that this looks like a lot work, but
it builds two frameworks and one app in one go. The individual
project's build.xml is never used.
The whole process could be more configurable and indeed I've been
toying with a special WonderApplication/WonderFramework task for
woproject that would just take all the info either from the eclipse
classpath or some props file. But it's not *that* much work and I
change or edit these on a once-a-year basis only...
Cheers, Anjo
macbook:~/extras/webobjects ak$ cat build.xml
<project name="PressRoom" default="all" basedir=".">
<property name="extras.root" value="${basedir}" />
<property name="wonder.root" value="${user.home}/Wonder" />
<property name="wo.localroot" value="/" />
<!-- PRApp -->
<target name="PRApp.all">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.all" >
<property name="project.name" value="PRApp" />
<property name="project.type" value="application" />
<property name="project.principal.class"
value="ag.kcmedia.Application" />
<property name="project.dir" value="${extras.root}/
edelman/PRApp" />
<property name="use.webobjects.d2w" value="true" />
<property name="use.wonder.core" value="true" />
<property name="use.wonder.d2w" value="true" />
<property name="use.wonder.logic" value="true" />
<property name="use.wonder.mail" value="true" />
<!--property name="use.wonder.changenotification"
value="true" /-->
<property name="use.mysql" value="true" />
<property name="use.additional.framework.1" value="PR*" />
<property name="use.additional.framework.2"
value="ERExtras.framework" />
</ant>
</target>
<target name="PRApp.clean">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.clean" >
<property name="project.name" value="PRApp" />
<property name="project.type" value="application" />
</ant>
</target>
<!-- PRLogic -->
<target name="PRLogic.all">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.all" >
<property name="project.name" value="PRLogic" />
<property name="project.type" value="framework" />
<property name="project.principal.class"
value="ag.kcmedia.PRLogic" />
<property name="project.dir" value="${extras.root}/
edelman/PRLogic" />
<property name="use.wonder.mail" value="true" />
<property name="use.webobjects.d2w" value="true" />
<property name="use.wonder.core" value="true" />
<property name="use.wonder.d2w" value="true" />
<property name="use.wonder.logic" value="true" />
<property name="use.additional.framework.1"
value="PR*.framework" />
<property name="use.additional.framework.2"
value="ERExtras*.framework" />
</ant>
</target>
<target name="PRLogic.clean">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.clean" >
<property name="project.name" value="PRLogic" />
<property name="project.type" value="framework" />
</ant>
</target>
<!-- PRLook -->
<target name="PRLook.all">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.all" >
<property name="project.name" value="PRLook" />
<property name="project.type" value="framework" />
<property name="project.principal.class" value="" />
<property name="project.dir" value="${extras.root}/
edelman/PRLook" />
<property name="use.webobjects.d2w" value="true" />
<property name="use.wonder.core" value="true" />
<property name="use.wonder.d2w" value="true" />
<property name="use.wonder.logic" value="true" />
<property name="use.additional.framework.1"
value="PR*.framework" />
<property name="use.additional.framework.2"
value="ERExtras.framework" />
</ant>
</target>
<target name="PRLook.clean">
<ant antFile="${wonder.root}/Build/build/generic.xml"
target="generic.clean" >
<property name="project.name" value="PRLook" />
<property name="project.type" value="framework" />
</ant>
</target>
<target name="edelman.all" depends="ERExtras.all, PRLogic.all,
PRLook.all, PRApp.all" />
<target name="edelman.clean" depends="ERExtras.clean,
PRLogic.clean, PRLook.clean, PRApp.clean" />
<target name="edelman." depends="edelman.all" />
<target name="PRLook." depends="PRLook.all" />
<target name="PRApp." depends="PRApp.all" />
<target name="all" depends="edelman.all" />
<target name="clean" depends="edelman.clean" />
</project>
This archive was generated by hypermail 2.0.0 : Wed Jan 10 2007 - 13:29:25 EST