如何将自己的编译器与Nant一起使用?

时间:2020-03-05 19:00:06  来源:igfitidea点击:

Nant似乎非常以编译器为中心,这是因为它被认为是.NET开发系统。但是我知道可以做到!我已经看到了它。我们正在构建的平台具有其自己的编译器,并且不为c ++使用'cl.exe'。我们正在不同的平台上构建C ++应用程序,并希望使用我们自己的编译器进行覆盖。谁能指出我这样做的方法,或者至少如何建立自己的目标,该目标将使用目标平台的编译器?

解决方案

回答

我们需要编写自己的任务。这是一个很好的参考。

回答

最初,使用<exec>任务运行可执行文件,并将任何必需的信息作为参数和/或者环境变量传入。

为了将来使用,我们还可以研究编写自己的任务。我知道使用标准ant这是通过<taskdef>任务和一个Java类完成的。不幸的是,我不确定Nant的功能。

回答

我们也可以使用&lt;exec>任务。

回答

这是我为Delphi做的。每个" arg"是一个单独的参数,在其他地方定义了一个值。在调用目标之前,将使用已设置的参数来调用目标。

<target name="build.application">
    <exec program="dcc32" basedir="${Delphi.Bin}" workingdir="${Application.Folder}" verbose="true">
        <arg value="${Application.Compiler.Directive}" />
        <arg value="-Q" />
        <arg value="/B" />
        <arg value="/E${Application.Output.Folder}" />
        <arg value="/U${Application.Lib.Folder};${Application.Search.Folder}" />
        <arg value="${Application.Folder}${Delphi.Project}" />
    </exec>
</target>