NAnt - включение исходных файлов в задачу csc вне базового каталога

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

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

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

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

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


person matt    schedule 05.02.2010    source источник


Ответы (1)


Вы не ограничены одним <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>
person Laurent Etiemble    schedule 05.02.2010