На работе мы используем CMake для сборки продуктов. При этом собираются различные конфигурации (Release, Debug), с помощью разных компиляторов (msvc-2008, mingw-gcc-4.4.0, sparc-sunos-gcc-3.4.6, прочие компиляторы для различных устройств: iar, arm-gcc, vrxcc).
Примерная иерархия директорий со сборками выглядит так:
Для поддержки такой иерархии написаны скрипты для автоматизации конфигурирования и сборки проекта.
Примерная иерархия директорий со сборками выглядит так:
\---buildroot
\---win32
+---mingw-gcc-4.4.0
| +---Debug
| \---Release
\---msvc-2008
+---Debug_Dynamic
+---Debug_Static
+---Release_Dynamic
\---Release_Static
Для поддержки такой иерархии написаны скрипты для автоматизации конфигурирования и сборки проекта.