[devel] q: %cmake*

Michael Shigorin mike на osdn.org.ua
Пн Мар 5 12:09:46 MSK 2012


On Mon, Mar 05, 2012 at 10:02:29AM +0600, REAL wrote:
> Я сталкивался и с таким, и с ровно наоборот: пакет не хотел
> собирался нигде, кроме insource. Пример не приведу: давно это
> было.

--- wrar@
Сборка out-of-source включена по умолчанию, потому что, как
правило, это не создаёт проблем, даёт некоторые преимущества,
официально считается предпочтительной, в в некоторых проектах
in-source может быть отключен вообще.
В случае, когда out-of-source не работает (обычно из-за
относительных путей в CMakeLists), а чинить неохота (хотя это,
в общем-то, прямая задача майнтейнера), можно использовать макрос
%cmake_insource, который, как можно догадаться, вызывает cmake
в корне.
--- http://lists.altlinux.org/pipermail/devel/2009-November/177411.html

Насчёт задачи майнтейнера не могу согласиться, это задача апстрима.

> >> Вообще-то сборка insource не очень хорошо.
> > Обоснования?
> Ну мне кажется это удобно, когда мухи отделены от котлет.

Я так и не понял, какие преимущества получаются для пакетов.

> http://www.cmake.org/Wiki/CMake_FAQ#Out-of-source_build_trees
> "Out-of-source builds are recommended, as you can build
> multiple variants in separate directories, e.g.,
> HelloBuildDebug, HelloBuildRelease."

Такое бывает и в пакетах, но крайне редко.

PS: для VERBOSE можно отдельную ручку предусмотреть,
а-ля %cmake_verbose или обобщить как %add_cmake_flags.

PPS: спасибо за обсуждение, FG-2.6.0 уже в сизифе
с учётом сказанного.

-- 
 ---- WBR, Michael Shigorin <mike на altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


Подробная информация о списке рассылки Devel