[devel] I: cmake macros

Arseny Maslennikov arseny на altlinux.org
Пн Май 31 13:45:14 MSK 2021


On Mon, May 31, 2021 at 01:22:47PM +0300, Grigory Ustinov wrote:
> 
> 31.05.2021 13:09, Andrey Cherepanov пишет:
> > 31.05.2021 12:20, Arseny Maslennikov пишет:
> > > Hi!
> > > 
> > > Вчера прошло задание 269879 с cmake 3.19.7-alt3.
> > > Описание изменения и цели, которые оно должно было достигнуть, я
> > > поместил на страничку https://www.altlinux.org/CMakeMigration2021,
> > > чтобы не разводить тут простыню. (Если кому-то интересно конструктивно
> > > обсудить подробности, это всё ещё можно сделать)
> > > 
> > > Большинство пакетов, которые не собрались бы с cmake 3.19.7-alt3 по
> > > совсем тривиальным причинам, были обновлены в том же задании, но не все;
> > > далее о тех, кто остался.
> > > 
> > > Судя по github.com/altlinux/specs, в сизифе есть несколько пакетов, в
> > > спеках которых есть "%cmake_build VERBOSE=1":
> > > % git grep -F '%cmake_build VERBOSE=1' | wc
> > >       32      68    1508
> > > Сейчас verbose передаётся по умолчанию (можно было так не делать, но
> > > спеков с VERBOSE=1 было больше, чем без этого флага — что говорит о
> > > предпочтении мейнтейнеров — поэтому и было принято такое решение).
> > > 
> > > Их исправление сводится либо просто к убиранию VERBOSE=1, либо к явному
> > > вызову make с VERBOSE=0

Вдогонку: в этом случае лучше явно передать cmake -G'Unix Makefiles' и
не зависеть от значения -G по умолчанию.

> > > или `cmake --build "%_cmake__builddir"' без
> > > опции --verbose, если вам так больше нравится. (Некоторые пакеты я успел
> > > исправить лично; к слову, там были накручены в виде makeflags либо
> > > вообще неактуальные переменные, либо ныне настраиваемые по-другому)

Другая категория спеков — те, где вызывается %cmake_build t1 t2 t3 ...
Перед списком целей надо вставить -t или --target: %cmake_build -t t1 t2 t3 ...
Ну, или вызывать явно native builder tool.
До каких-то пакетов у меня дошли руки, до некоторых — ещё нет.

> > > Что же касается p9, туда сегодня будет отправлен вариант макросов cmake
> > > в задании 272559, совместимый и с текущими спеками в p9 на момент его
> > > составления, и с копируемыми спеками из Сизифа.
> > > Я сначала займусь этим заданием (потому что копирование спеков сейчас
> > > затруднено, уже были жалобы в личку), а после буду исправлять оставшиеся
> > > пакеты в сизифе, до которых не дойдут руки у мейнтейнеров.

Отправил задание.

> > 
> > Уважаемый Арсений. На ровном месте у меня сломалось десяток пакетов.
Приношу искренние извинения за попорченные нервы, но см. ниже.
> > Прошу вернуть BUILD как значение по умолчанию в %_cmake__builddir.
> Или исправить сломанные пакеты.

По этому поводу.

При работе над 269879 я заметил несколько пакетов, которые собирались,
но не проходили noarch check из-за не до конца сгенерированной
документации на разных архитектурах.
Это как минимум:
:dir=/people/arseny/packages/coin3d.git
:dir=/people/arseny/packages/libopencv.git
:dir=/people/arseny/packages/soqt.git
:dir=/people/arseny/packages/libvxl.git
:dir=/people/arseny/packages/uhd.git

Понять характер проблемы можно по логам #272855 и #272860 (два разных
исправления для libvxl).

Их, как и некоторые другие пакеты, пришлось выкинуть из 269879, и сейчас
они не пересобираются.

Для таких пакетов у меня в packages лежат сборочные теги, их надо просто
собрать. Я займусь этим в ближайшее время. 
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 833 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20210531/21335fb0/attachment.bin>


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