NAnt - включение исходных файлов в задачу csc вне базового каталога - PullRequest
1 голос
/ 05 февраля 2010

Я только начинаю выбирать NAnt вместо MSBuild в нашем проекте CruiseControl.

Одна из вещей, которые мы делаем внутри набора проектов, - это ссылка в одном файле AssemblyInfo.cs снаружи дерева проекта, чтобы упростить управление версиями (он находится в каталоге над папками проекта).

Есть ли очевидный способ достижения этого в разделе <sources> задачи <csc>?

Из того, что я могу сказать, секция <sources> поддерживает только один элемент <include>, который должен находиться под основанием задачи.

Полагаю, другим вариантом было бы скопировать один файл AssemblyInfo.cs как часть задачи перед вызовом csc, но подумал, есть ли более чистый способ сделать это.

1 Ответ

1 голос
/ 05 февраля 2010

Вы не ограничены одним <include/> в <sources/>. Вы можете ссылаться на что угодно, если не указали свойство basedir для <sources/>:

<csc target="exe" output="HelloWorld.exe" debug="true">
    <sources>
        <!-- Will use project dir as base dir -->
        <include name="**/*.cs" />
        <!-- Absolute path -->
        <include name="/tmp/42/*.cs" />
        <!-- Relative to project dir -->
        <include name="../../Shared/*.cs" />
    </sources>
    <references>
        <include name="System.dll" />
        <include name="System.Data.dll" />
    </references>
</csc>
...