Visual Studio предлагает понятие наборов инструментов, например для Visual Studio 2015 и дополнительного пакета «Поддержка Windows XP для C ++» есть наборы инструментов v140
и v140_xp
. В случае, если кто-то добавил пакет «Clang with Microsoft CodeGen», есть v140_clang_c2
.
С CMake я могу использовать флаг командной строки -T
, чтобы указать набор инструментов, который будет использоваться для файлов решений, созданных с помощью CMake, например cmake -T v140_clang_c2
сгенерирует файл решения проекта с «Visual Studio 2015 - Clang с Microsoft CodeGen (v140_clang_c2)», настроенным как «Platform Toolset» для всех целей.
Как я могу сказать Conan в Windows с соответствующей установленной Visual Studio, что нужно использовать определенный набор инструментов? Желательно для conanfiles, использующих CMake в качестве генератора.
Единственный способ, который я мог придумать, - это добавить дополнительный параметр ко всем проектам / conanfile.py, который я хотел бы использовать с разными наборами инструментов, и добавить еще один параметр пакета (например, используемый как -o toolset=v140_clang_c2
) для добавления в командную строку первоначальный вызов CMake.
Я ожидал, что эта изменчивость будет частью самого диспетчера пакетов, а не ответственностью авторов пакетов.