Этот вопрос немного устарел, но недавно я столкнулся с той же проблемой при интеграции GStreamer в свой проект. GStreamer поставляется с набором очень хорошо подготовленных и высококачественных таблиц свойств, и я хотел использовать их вместо того, чтобы ковыряться в CMake.
К счастью, эта проблема ограничивается только Windows и Visual Studio. Итак, вот мое решение:
Идея состоит в том, чтобы использовать функцию файла .user в Visual Studio. CMake не создает этот файл, поэтому его создание во время настройки вполне безопасно. Во время настройки вы можете создать файл с именем EXACT в качестве файла вашего проекта, но заканчивающимся расширением .user.
Частичное решение:
Если ваш файл проекта называется my_project.vcxproj
, вам нужно создать рядом с ним еще один файл с именем my_project.vcxproj.user
. Согласно MSDN:
В пользовательском файле (.vcxproj.user) хранятся пользовательские свойства, например параметры отладки и развертывания. Файл vcxproj.user применяется ко всем проектам для конкретного пользователя.
Содержимое этого файла для импорта листов свойств примерно такое:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="/path/to/sheet1.props" />
<Import Project="/path/to/sheet2.props" />
</Project>
Не безупречно, но работает до тех пор, пока CMake не начнет поддерживать листы свойств. Файл можно создать с помощью команды CMake file
в файле configure- время.
Возможные предостережения:
Я заметил, что когда я добавляю листы свойств таким образом, иногда они не отображаются в окне диспетчера свойств (возможно, это ошибка в Visual Studio Community 2013), но они всегда импортируются правильно, а зависимости разрешаются правильно.
person
Sepehr
schedule
10.10.2015