Как поддержать оба vcxproj для создания проекта?

Я занимаюсь разработкой кроссплатформенного проекта C++. Первоначальная идея - работать с msvc2010, а затем компилировать для других систем с помощью CMake и Hudson. Кажется, не удобно вручную менять файлы CMake после изменения настроек студии.

Итак, что проще всего: написать парсер для vcxproj и vcxproj.filters, или есть другое хорошее решение?

2 ответа

Решение

Время от времени может быть полезно выполнить этот тип преобразования, скажем, для переноса. Во время своих путешествий я обнаружил следующее без особого порядка:

Специально для VS в CMake / GYP:

  • vcproj2cmake
  • vcxproj2cmake (не опечатка!)
  • gypify.py - генератор Gyp- файлов для чтения.sln / solution. Gyp - это альтернатива Cmake, в настоящее время используемая проектом Chromium (основа для браузера Google Chrome). Gyp будет выводить файлы сборки Makefile, Visual Studio или XCode (см. Ключ Gyp '-f [make|scons|msvc|xcode]'). Этот сценарий Python довольно многообещающий, и я надеюсь вскоре изменить его, чтобы правильно указать папки, содержащие заголовки, для параметра включения -I в gcc.

Другие инструменты преобразования, связанные с Cmake/Make:

  • Make It So Преобразует решения Visual Studio в make-файлы Linux gcc
  • проект sln2mak C#
  • Perl-скрипт sln2mak
  • GUCEF Project включает в себя инструмент ProjectGenerator, для Cmake
  • gencmake (ruby) - проект KDE
  • " pbtomake" говорит, что может конвертировать файлы XCode xcodeproj/pbproj в Makefiles (возможно, устаревшие)

ура

Богатые

Вы идете в обратном направлении - настройте все свои CMakeLists.txt и затем сгенерируйте проект MSVC из него.

Это не должно быть сложно или отнимает много времени. По сути, вам просто нужно сказать, в какие каталоги обращаться, объявить ваши пути включения, собрать свои *.cpps для каждой библиотеки с выражением glob и объявить ваши зависимости.

Если вам нужно настроить что-то еще, то ваш проект, вероятно, не очень переносим:-/

Лучший инструмент для этого - cmake-converter.

Другие вопросы по тегам