У меня есть цель, определенная следующим образом
<Target Name="CodeGen" Inputs="@(t4)" Outputs="@(InputHeadder)">
...
</Target>
Эта цель запускает некоторые команды управления исходным кодом и выполняет некоторые шаблоны t4, после чего позволяет продолжить сборку. Его привязка к процессу сборки с использованием сборки зависит от директивы.
<PropertyGroup>
<BuildDependsOn>
CodeGen;
$(BuildDependsOn);
</BuildDependsOn>
<CompileDependsOn>
CodeGen;
$(CompileDependsOn);
</CompileDependsOn>
Моя единственная проблема в том, что он не может правильно определить, когда строить цель. Входные файлы в этом случае представляют собой файлы t4, а выходные файлы - около 200 заголовочных файлов. Есть ли что-то, чего мне не хватает, чтобы гарантировать, что всякий раз, когда один из файлов t4 редактируется, выполняется цель codegen.