Подскажите — в какое место можно воткнуть генерацию кода по шаблону (в нашем случае это M4) таким образом, чтобы для этого не приходилось вручную пересобирать проект.
Я себе это вижу так — кастомная MSBuild-таска, которая стартится при попытке разрешить зависимость, которая проверяет, что файл шаблона изменился и заново генерирует дабавленные в проект исходники. Плюс запускает FSWatcher, который отслеживает изменения в этом файле.
Но меня не покидает ощущение того, что это велосипед и существует более простое и изящное решение, которое работает из коробки.
Повторюсь, что вариант со сборкой проекта не подходит — у человека не должно быть неизвестных типов при первом открытии проекта для резолва которых ему необходимо пересобрать проект.