I've committed a change into HEAD for
https://bugs.eclipse.org/bugs/show_bug.cgi?id=291446 (see the attached
patch there), but haven't released it onto build.eclipse.org yet for
fear of breaking everyone this late in the day. :)
If you're building PDT 2.2 w/ Athena locally and can grab the latest
o.e.d.common.releng source from HEAD, you can try changes. Stick a
postFetch target in your buildExtra.xml and it should be called at the
appropriate moment.
Nick
Jacek Pospychala wrote:
Thanks guys,
As far as I get it, Athena does not yet allow to invoke custom
customTargets.xml (customCustomTargets.xml?), so I opened following bug:
291446: Provide hook for extra actions after fetching code from repo and
before compiling it (e.g. code generation, parser generators, etc.)
https://bugs.eclipse.org/bugs/show_bug.cgi?id=291446
btw. now after playing a bit with builds I start to get how things work
:-) Things are much easier once you find out what's the order of
execution and where is what. I feel that hook-oriented way is more
criptic than sequential script. For example, if there was ever any new
build system going to happen, instead of customTargets.xml, I'd prefer
build.xml to look like:
<target name="all">
   <setup>
   <fetch>
   <...e.g. here is obvious place for postFetch action>
   <generate>
   <assemble>
   <package>
   <process>
   <build>
</target>
Which instantly selfdocuments the kind of steps and their order in build
process. It's also easy to add/remove default steps and put custom in
between. Just my 0.02$
Jacek
2009/10/5 Andrew Niefer <anie...@ca.ibm.com>
There are basically two places to do this kind of processing.Â
As you mentioned, the customTargets.xml postFetch or preGenerate.
 I'm not sure of the details of Athena, but I looked briefly at
org.eclipse.dash.common.releng and it looks like they deliver a
customTargets.xml that gets used normally.Â
If Athena allows you to specify properties that will be set before
calling pde.build, then you could provide your own customTargets.xml
and set "customTargets" to point to your own copy. Â (Setting this
property is one of the first things pde.build does, which is why you
need to set it before calling build.) Â I would suggest your copy
then import the Athena version. Â You're customTargets.xml can have
something like:Â
<available property="athenaCustom" file="${builder}/customTargets.xml" value="${builder}/customTargets.xml" />Â
<import file="${athenaCustom}"/>Â
<target name="preGenerate" >Â
  stuff here overrides the preGenerate target in athenaCustomÂ
</target>Â
The other place to do this is using a customBuildCallback.xml in the
plugin itself.Â
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.pde.doc.user/tasks/pde_custom_callbacks.htm
<http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.pde.doc.user/tasks/pde_custom_callbacks.htm>Â
The pre.build.jars target would be appropriate place to do this work.Â
The decision between the two would normally be based on how specific
this processing is to the plugins. Â For something that is looking
at a model file in your bundle and generating .java files I would
probably use custom call backs instead of custom targets. Â Unless
every bundle (or at least a lot of them) need to do the same
processing.Â
-AndrewÂ
From: Nick Boldt <nickbo...@gmail.com <mailto:nickbo...@gmail.com>>
To: Jacek Pospychała <jacek.pospych...@gmail.com
<mailto:jacek.pospych...@gmail.com>>
Cc: Andrew Niefer/Ottawa/i...@ibmca, Tools for Committer Community
<dash-...@eclipse.org <mailto:dash-...@eclipse.org>>
Date: 10/05/2009 03:27 PM
Subject: Re: Athena CBI - extra work needed after fetch from CVS
but before compiling
------------------------------------------------------------------------
Not sure where / how you'd invoke that, or if we expose that hook in
PDEÂ
(yet). I'll copy this to dash-dev@ and to Andrew Niefer - he might
haveÂ
a suggestion for how you can do this or what we need to add in Athena.
N
Jacek Pospychała wrote:
> hi Nick,
> I'm using Athena and trying to do generate some java files right
afterÂ
> their model get's fetched from CVS.
> Normally I would do this in customTargets.xml, and how would that
lookÂ
> in Athena? I first thought of run target in buildExtra.xml but thisÂ
> seems not invoked.
> I also tried to just put customTargets.xml inside my releng
directory -Â
> no look either.
>Â
> Or should this kind of task be put in specific plug-in inÂ
> customTargets.xml? (I'd prefer to avoid mixing plugin code with it'sÂ
> build xmls)
>Â
> Thanks!
>Â
> Jacek
--Â
Nick Boldt ::Â http://nick.divbyzero.com <http://nick.divbyzero.com/>
Release Engineer :: Eclipse Modeling & Dash Athena
--
Nick Boldt :: http://nick.divbyzero.com
Release Engineer :: Eclipse Modeling & Dash Athena
_______________________________________________
pdt-dev mailing list
pdt-dev@eclipse.org
https://dev.eclipse.org/mailman/listinfo/pdt-dev