Pergunta

Nant parece muito centrado no compilador - o que acho que é porque é considerado um sistema de desenvolvimento .NET.Mas eu sei que isso pode ser feito!Eu já vi isso.A plataforma que estamos construindo tem seu próprio compilador e não usa 'cl.exe' para c++.Estamos construindo um aplicativo C++ em uma plataforma diferente e gostaríamos de substituí-lo por nosso próprio compilador.Alguém pode me indicar uma maneira de fazer isso ou pelo menos como configurar um alvo próprio que usará o compilador da nossa plataforma de destino?

Foi útil?

Solução

Aqui está um que eu fiz para Delphi. Cada 'arg' é um parâmetro separado com um valor definido em outro lugar. O alvo é chamado com os params configurados antes de chamá -lo.

<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>

Outras dicas

Você precisa escrever sua própria tarefa. este é uma boa referência.

Inicialmente, use a tarefa <exec> para executar um executável, passando todas as informações necessárias como parâmetros e/ou variáveis ​​de ambiente.

Para uso futuro, você também pode investigar a criação de sua própria tarefa.Eu sei que com o ant padrão isso é feito com a tarefa <taskdef> e uma classe java.Infelizmente, não tenho certeza do equivalente de Nant.

Você também pode usar o <exec> tarefa.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top