LINUX.ORG.RU

[cmake vs другие] околофилософская, на тему билд-систем.


0

0

В настоящий момент усиленно размышляю и пробую на тему перевода всех прожектов фирмы (с\с++, java и, в идеале, c#)
на некую единую систему сборки интегрированную с svn и, возможно, некоторыми скриптами tcl.

Сборку планирую производить с помощью cmake.
Целевые платформы - Linux, Solaris, Windows.

К скриптам смейка планирую добавить:
- тестирование (пока смотрю на CTest\ Expect от tcl для гуев\ и, если средств CTest не хватит - cunit\cppunit)
- поиск ликов и, возможно, профилирование\оптимизация при необходимости - valgrind\glow code\purify.
- багтреккинг связан с самопальной внутренней системой, ее выбор, к сожалению, от меня уже не зависит.

Перед коммитом\после чекаута - с помощью uncrustify ровнять код под общий стандарт\вкус выкачавшего свою ветку девелопера.

Хотелось бы услышать впечатление тех, кто кроме cmake использовал иные билд-системы (а-ля cruisecontrol\ maven \ etc ),
в чем их функциональные преимущества\недостатки, в плане кроссплатформенности\гибкости\интегрирования сторонних средств (для тестирования\оптимизации), по сравнению с cmake?

Слэш пишется вот так: "/". И никак иначе. Повторить 256 раз. Запомнить на всю оставшуюся жизнь.

kemm
()

Проекты на java, c++ и c# надо собирать и тестировать родными для них средствами. А управлять зоопарком конфигураций поможет билдсервер. Какой? Любой! Который поддерживает целевые платформы и нужные системы сборок. Мы используем teamcity.

baverman ★★★
()

В настоящий момент усиленно размышляю и пробую на тему перевода всех прожектов фирмы (с\с++, java и, в идеале, c#) на некую единую систему сборки интегрированную с svn

Который уже год использую коллекцию портов FreeBSD для инсталляции и управления программным обеспечением, собираемым из исходников, написанных на разных языках программирования, и бинарников. Система сынтегрирована с CVS (но в будущем скорее всего будет переведена на SVN или Mercurial).

iZEN ★★★★★
()
Ответ на: комментарий от baverman

2 baverman:
Про тим сити не знал, посмотрю, спасибо.

С тезисом, что можно использовать любой билдсервер не согласен - на мейкфайлах и скриптах, сцепляющих различные утилиты, также возможно построить билдсервер, вопрос в затратах времени на настройку, перетаскивание уже существующих проектов под них и т.п. Мне все-таки было-бы интересно услышать насколько подобные средства (такие, в которых все включено а-ля круизконтрол) позволяют легче\быстрее\гибче контролировать процессы билда и иже с ними по сравнению с смейком.

А утилиты которые я пока планирую использовать, я перечислил в тайной надежде, что мне кто-нибудь сможет подсказать более эффективные\удобные\просто посмотреть для общего развития.

villager
() автор топика
Ответ на: комментарий от iZEN

2iZEN
Я так понимаю это какие то внутренние наработки? В противном случае был бы признателен за линки - посмотрел бы обязательно.

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

villager
() автор топика
Ответ на: комментарий от baverman

+1 за тимсити

для хистрых билд-скриптов можно к нему gradle прикрутить и будет совсем кастомизуемо.

thevery ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.