[visual studio и cmake] миграция, или сожительство?

SCIF32

вопрос связан с тем, что я вообще не представляю что есть VS и vsproj.
В чем проблема: есть товарищ, который ведет разработку открытого пакета в VS.
Я хочу предложить ему включить сборку пакета под линукс (или кросс-платформенную сборку т.к. сам уже писал automake и cmake-файлы и deb-пак для его проекта собирал.
вот мне интересно - какой способ будет менее болезненный для него и для дальнейшей поддержки дистрибутива под винду и под линукс (ориентируюсь на debian все же)

doublemother

cmake -G "Visual Studio 9 2008" path\to\project

Генерирует солюшен для 2008 студии соответственно.
Только надо грамотно писать CMakeLists.txt с учетом фишек специально для студии. Например, иначе по умолчанию все исходники будут разбиты только на две группы Headers/Sources, без какой бы то ни было иерархии, что весьма неудобно.
А так даже если поправить прямо в студии этот самый CMakeLists и вызвать пересборку солюшена - сначала будет вызвана его перегенерация цмейком.

Andbar

А у cmake-файла синтаксис сильно отличается от синтаксиса nmake-файлов? Если нет, то можно использовать VS-проект, в котором сборкой будет управлять nmake-файл.

Serab

cmake — и так создан именно для кроссплатформенности, там уже все предусмотрено. Не надо над ним издеваться.
Да и синтаксис у него довольно сильно отличается, чтобы спокойно пользовать было нельзя.

doublemother

CMakeLists.txt файл отличается чуть более, чем полностью. На его основе CMake генерирует файл для билдсистемы. В линуксе, например, это по дефолту Makefile, чей синтаксис идентичен nmake'овскому. В винде умеет генерить как Makefile, так и солюшены. Вторые для разработки чуток удобнее.

Serab

Makefile, чей синтаксис идентичен nmake'овскому
не идентичен. Сильно отличается.

doublemother

Отличается именем компилятора?
Я не приглядывался, но по-моему абсолютно те же йайца.
Оставить комментарий
Имя или ник:
Комментарий: