On 11 July 2006 at 14:46, Mark Hindess <[EMAIL PROTECTED]> wrote:
> 
> On 11 July 2006 at 13:56, Mark Hindess <[EMAIL PROTECTED]> wrote:
> > 
> > On 11 July 2006 at 16:42, "Ivan Volosyuk" <[EMAIL PROTECTED]> wrote:
> > >
> > > [snip]
> > >
> > > Working on it. Not sure I like the way make is called from ant build.
> > > Here is an example:
> > > 
> > > (from modules/luni/build.xml)
> > > 
> > >     <target name="clean.native" if="is.windows">
> > >         <exec failonerror="true"
> > >               executable="${make.command}"
> > >               dir="${hy.luni.src.main.native}/vmi/${hy.os}">
> > >             <env key="HY_HDK" value="${hy.hdk}" />
> > >                     <arg line="clean" />
> > >         </exec>
> > >         <exec failonerror="true"
> > >               executable="${make.command}"
> > >               dir="${hy.luni.src.main.native}/luni/${hy.os}">
> > >             <env key="HY_HDK" value="${hy.hdk}" />
> > >                     <arg line="clean" />
> > >         </exec>
> > >                 <exec failonerror="true"
> > >               executable="${make.command}"
> > >               dir="${hy.luni.src.main.native}/launcher/${hy.os}">
> > >             <env key="HY_HDK" value="${hy.hdk}" />
> > >                     <arg line="clean" />
> > >         </exec>
> > >         <exec failonerror="true"
> > >               executable="${make.command}"
> > >               dir="${hy.luni.src.main.native}/vmls/${hy.os}">
> > >             <env key="HY_HDK" value="${hy.hdk}" />
> > >                     <arg line="clean" />
> > >         </exec>
> > >     </target>
> > > 
> > > This means that I should copy paste the environment variable from ant
> > > variable conversion code in dozen of places. BTW, why the clean up is
> > > just windows specific? What about Linux?
> > 
> > Good question.  I look forward to Oliver's answer. ;-)
> > 
> > > I'm going to create some kind of macro command which will include all
> > > common settings for make execution. (/me is reading manuals)
> > 
> > Excellent idea.  Something like (untested):
> > 
> >   <make dir="${hy.luni.src.main.native}/vmls/${hy.os}" target="clean" />
> > 
> > and:
> > 
> >   <macrodef name="make">
> >     <attribute name="dir" />
> >     <attribute name="target" default="" />
> >     <sequential>
> >       <exec failonerror="true"
> >             executable="${make.command}"
> >             dir="@{dir}">
> >         <env key="HY_HDK" value="${hy.hdk}" />
> >         <arg line="@{target}" />
> >       </exec>
> >     <sequential>
> >   </macrodef>
> > 
> > (You might have to make the default for target "all".)
> > 
> > At the moment the only common file you could put this in is
> > properties.xml which isn't elegant but it might be okay for now.  We
> > really need to have a common file that gets moved to the deploy tree -
> > like the make fragments.
> 
> Ivan,
> 
> I'm going to add something like this to svn shortly.  I decided I should
> fix the windows only clean in luni.  And a couple of other issues.

The make macro is in r420855.

Regards,
 Mark.



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to