Если вы хотите постоянно переносить сборку вашей программы на GNU / Linux, я бы рекомендовал переключиться на autotools (autoconf и automake).Автоинструменты очень распространены и имеют отличную поддержку кросс-компиляции.(с другой стороны, это также несколько заслуженная репутация за странность.) Хотя я не знаю об автоматическом переводе из проектов VS, компиляция одной программы может быть настолько же простой, как и поиск всех исходных файлов и заголовочных файлов., перечислив их в Makefile.am соответствующим образом и написав правило для объектов Windows.
Если переход к MinGW не написан в камне или вероятен продолжающийся сценарий сборки с двумя компиляторами, используйте cmake, как предложили комментаторы.Хотя я всегда считал, что CMake представляет собой серьезную проблему для сборок, не связанных с сопровождающим (обычно для программного обеспечения с открытым исходным кодом), он имеет хорошую репутацию для генерации всех видов файлов описания сборки, таких как Makefiles и VS проекты.
Так или иначе, вам придется конвертировать свой проект вручную.Это может быть довольно легко для нормальной структуры проекта, но это должно быть сделано.