2008-09-17 2 views
2

Нант кажется очень ориентированным на компилятор, что, по-видимому, связано с тем, что считается системой разработки .NET. Но я знаю, что это можно сделать! Я видел это. Платформа, на которой мы строим, имеет свой собственный компилятор и не использует «cl.exe» для C++. Мы создаем приложение C++ на другой платформе и хотели бы переопределить наш собственный компилятор. Может ли кто-нибудь указать мне на способ сделать это или, по крайней мере, настроить собственную цель, которая будет использовать компилятор нашей целевой платформы?Как использовать собственный компилятор с Nant?

ответ

5

Вот один я сделал для 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> 
+0

Хороший ответ. Мы сделали то же самое для нашего компилятора Borland/CodeGear C++. Мы можем в значительной степени запустим вашу посудомоечную машину с надлежащей задачей exec. :) – 2008-09-17 23:01:22

3

Вам необходимо написать собственное задание. This - хорошая ссылка.

1

Изначально используйте команду <exec> для запуска исполняемого файла, передавая любую необходимую информацию в виде параметров и/или переменных окружения.

Для дальнейшего использования вы также можете исследовать написание собственной задачи. Я знаю со стандартным ant, это делается с задачей <taskdef> и классом java. К сожалению, я не уверен в эквиваленте Нанта.

0

Вы также можете использовать задачу <exec>.

Смежные вопросы