Я сейчас работаю над проектом на С++, который состоит из нескольких программ. Некоторые программы состоят из модулей. Модули могут линковаться статически либо собираться в динамически загружаемые библиотеки. В зависимости от особенностей платформы или желания сборщика может собираться лишь часть модулей. На данный момент поддерживаются Linux/x86, FreeBSD/x86, Solaris/SPARC и Windows NT/2K/XP, но есть желание обеспечить работу приложений на максимальном количестве ОС и железа.
Какими инструментами лучше пользоваться для сборки таких проектов? make не устраивает, так как не всегда обеспечивает простоту и гибкость, а так же плохо работает в Windows, где нет sed, awk & friends. Связка automake/autoconf/libtool очень хороша, но то же зависит от шелла и утилит, а потому не работает в Windows. Есть ли какие-нибудь альтернативные средства сборки программ не имеющие дюжины трудно переносимых зависимостей? Есть ли у кого-нибудь опыт использования таких систем?