Я унаследовал некоторый код C99, который планирую использовать повторно в решении, ориентированном на C ++. К сожалению, даже последний компилятор Microsoft практически не поддерживает нетривиальные функции C99.
Код, о котором идет речь, был проверен до смерти, и я бы не стал переписывать его на C ++. Это означает, что для повторного использования кода мне придется полагаться на соответствующий сторонний компилятор.
После осмотра кажется, что самый хороший способ для меня интегрировать этот код - это добавить "Makefile Project" в мое решение. Только одна проблема. Похоже, что теперь я несу ответственность за синхронизацию свойства «Build Command Line» с файлами, которые я добавляю в проект через Visual Studio.
На первый взгляд, я не смог найти способ получить список файлов в моем проекте через обычные макросы в стиле Visual Studio $ (). Я всегда мог написать сценарий оболочки, который бы перечислял файлы * .c в моем исходном дереве и передавал их пути стороннему компилятору. Тем не менее, я ожидал, что Visual Studio выполнит хотя бы эту часть работы за меня, поскольку она уже имеет эту информацию в соответствующем файле * .vc [x] proj.
Маловероятно, что мне понадобится добавлять какие-либо новые исходные файлы в этот проект, но, тем не менее, ручная синхронизация (т.е. без сценария) такого рода кажется мне довольно хрупкой.
Какие у меня есть варианты, кроме написания вспомогательного скрипта?