Для достижения наилучших результатов используйте GNU make, проект make-файла Visual Studio и инструмент, который вы пишете сами.Ваш make-файл представляет собой скелет, который компилирует файлы (используйте переменную для списка файлов), и ваш инструмент анализирует файлы .sln и .vcproj для создания этого списка файлов.Makefile включает в себя результат.Просто нужно немного клея и смазки для локтя - вы потратите целый день на то, чтобы проклясть нежелание сделать то, что вы хотите, и тогда все заработает.После запуска и запуска этот подход не требует слишком большого обслуживания.
Вы можете сделать свой инструмент и make-файл простым, просто выбрасывая все файлы во всех проектах в микс и связывая результат, используя шаблоны файлов, чтобы решить, чтопроисходит с каждым файлом и помещает все параметры компилятора в make-файл.Или вы можете получить более умные, извлекать #defines и включать пути из проекта, и, возможно, добавить в конфигурацию проекта Win32, которую генератор makefile использует для правильной обработки пользовательских шагов сборки, исключенных файлов, параметров компилятора и т. Д.
Простой подход должен удовлетворить большинство, потому что он позволяет любому добавлять новые файлы в проект так же, как они это обычно делают, не беспокоясь о make-файле, в то же время затрудняя случайное изменение настроек, которые не нужны пользователям.меняется.
Ранее я описывал этот подход (с чуть более подробной информацией):
Хорошие методы для использования Makefiles в VisualStudio?
(Как только выесли он настроен, он работает хорошо, и во многих отношениях он на самом деле более удобен, чем обычный подход VS, даже без учета того факта, что теперь вы можете использовать другие компиляторы.)