harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Hindess <mark.hind...@googlemail.com>
Subject Re: [classlib] debug compilation as default
Date Tue, 11 Jul 2006 12:56:56 GMT

On 11 July 2006 at 16:42, "Ivan Volosyuk" <ivan.volosyuk@gmail.com> 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.

Regards,
 Mark.



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message