Ты пытался CMake? При этом вы можете создавать независимые от компилятора и IDE make-файлы, а затем генерировать make-файлы / файлы проекта для выбранной вами среды. Вы можете свободно писать сценарии, чтобы вы могли установить некоторые версии для gcc и другие для vc ++ или clang.
Вы также можете использовать его, если вы хотите создавать различные конфигурации сборки.