ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Q: лучшее имя для одного rpm-макроса
@ 2020-11-21 14:05 Dmitry V. Levin
  2020-11-21 14:13 ` Alexey V. Vissarionov
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Dmitry V. Levin @ 2020-11-21 14:05 UTC (permalink / raw)
  To: ALT Devel discussion list

Hi,

Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
Сам макрос такой:

%BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires: %*}}}}}

Пример использования:
%BR4T list of packages needed for tests

Предыстория:
https://bugzilla.altlinux.org/39327


-- 
ldv


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 14:05 [devel] Q: лучшее имя для одного rpm-макроса Dmitry V. Levin
@ 2020-11-21 14:13 ` Alexey V. Vissarionov
  2020-11-21 14:44 ` Alexey Gladkov
  2020-11-21 16:02 ` Vitaly Lipatov
  2 siblings, 0 replies; 13+ messages in thread
From: Alexey V. Vissarionov @ 2020-11-21 14:13 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2020-11-21 17:05:54 +0300, Dmitry V. Levin wrote:

 > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
 > Сам макрос такой:
 > %BR4T()
 > %{!?__buildreqs:%{!?_disable_check:%{!?_without_check:
 > %{!?_disable_test:%{!?_without_test:BuildRequires: %*}}}}}
 > Пример использования: %BR4T list of packages needed for tests
 > Предыстория: https://bugzilla.altlinux.org/39327

testrequires, testreq или testprereq

Лично я предпочел бы самый короткий вариант.


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 14:05 [devel] Q: лучшее имя для одного rpm-макроса Dmitry V. Levin
  2020-11-21 14:13 ` Alexey V. Vissarionov
@ 2020-11-21 14:44 ` Alexey Gladkov
  2020-11-21 21:05   ` Andrey Savchenko
  2020-11-21 16:02 ` Vitaly Lipatov
  2 siblings, 1 reply; 13+ messages in thread
From: Alexey Gladkov @ 2020-11-21 14:44 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Sat, Nov 21, 2020 at 05:05:54PM +0300, Dmitry V. Levin wrote:
> Hi,
> 
> Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> Сам макрос такой:
> 
> %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires: %*}}}}}

%BuildRequires_check ?

-- 
Rgrds, legion



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 14:05 [devel] Q: лучшее имя для одного rpm-макроса Dmitry V. Levin
  2020-11-21 14:13 ` Alexey V. Vissarionov
  2020-11-21 14:44 ` Alexey Gladkov
@ 2020-11-21 16:02 ` Vitaly Lipatov
  2020-11-21 16:18   ` Dmitry V. Levin
  2 siblings, 1 reply; 13+ messages in thread
From: Vitaly Lipatov @ 2020-11-21 16:02 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin писал 21.11.20 17:05:
> Hi,
> 
> Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> Сам макрос такой:
> 
> %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires:
> %*}}}}}

А зачем нужна поддержка разных странных и неправильных вариантов 
отключения check?

Нельзя ли поддержать --nocheck в rpmbuild
https://bugzilla.redhat.com/show_bug.cgi?id=1192128
и отталкиваться от этого?

И почему не
%if_check
BuildRequires
%endif
?

Я бы вот хотел иметь свободу в том, как задавать сборочные зависимости, 
а не заранее прибитый гвоздями BuildRequires. (Т.е. во многих пакетах 
используются другие макросы для формирования сборочных зависимостей, и 
хотелось бы, чтобы новый макрос обеспечивал их поддержку).

И вы всегда сможете сделать
%BR4T() \
%if_check \
BuildRequires: %* \
%endif \
%nil

:)

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 16:02 ` Vitaly Lipatov
@ 2020-11-21 16:18   ` Dmitry V. Levin
  2020-11-21 17:52     ` Vitaly Lipatov
  0 siblings, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2020-11-21 16:18 UTC (permalink / raw)
  To: ALT Devel discussion list

On Sat, Nov 21, 2020 at 07:02:45PM +0300, Vitaly Lipatov wrote:
> Dmitry V. Levin писал 21.11.20 17:05:
> > Hi,
> > 
> > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> > Сам макрос такой:
> > 
> > %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires:
> > %*}}}}}
> 
> А зачем нужна поддержка разных странных и неправильных вариантов 
> отключения check?
> 
> Нельзя ли поддержать --nocheck в rpmbuild
> https://bugzilla.redhat.com/show_bug.cgi?id=1192128
> и отталкиваться от этого?

Получается, что вы хотите предложить пятый вариант включения/выключения
%check, но мне кажется, что нам и нынешних четырёх более чем достаточно.

Поскольку --enable=check/--disable=check у нас поддерживаются с 2009 года,
ещё один вариант ничего, кроме большей путаницы, не принесёт.

> И почему не
> %if_check
> BuildRequires
> %endif
> ?
> 
> Я бы вот хотел иметь свободу в том, как задавать сборочные зависимости, 
> а не заранее прибитый гвоздями BuildRequires. (Т.е. во многих пакетах 
> используются другие макросы для формирования сборочных зависимостей, и 
> хотелось бы, чтобы новый макрос обеспечивал их поддержку).

Можно завести и такой макрос, например,
%if_check %if 0%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:1}}}}} > 0

Но пользоваться им будет менее удобно, потому что 3 строки хуже одной.
Да и имя %if_check какое-то странное.


-- 
ldv


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 16:18   ` Dmitry V. Levin
@ 2020-11-21 17:52     ` Vitaly Lipatov
  2020-11-21 22:14       ` Dmitry V. Levin
  0 siblings, 1 reply; 13+ messages in thread
From: Vitaly Lipatov @ 2020-11-21 17:52 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin писал 21.11.20 19:18:
> On Sat, Nov 21, 2020 at 07:02:45PM +0300, Vitaly Lipatov wrote:
>> Dmitry V. Levin писал 21.11.20 17:05:
>> > Hi,
>> >
>> > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
>> > Сам макрос такой:
>> >
>> > %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires:
>> > %*}}}}}
>> 
>> А зачем нужна поддержка разных странных и неправильных вариантов
>> отключения check?
>> 
>> Нельзя ли поддержать --nocheck в rpmbuild
>> https://bugzilla.redhat.com/show_bug.cgi?id=1192128
>> и отталкиваться от этого?
> 
> Получается, что вы хотите предложить пятый вариант включения/выключения
> %check, но мне кажется, что нам и нынешних четырёх более чем 
> достаточно.
Я хочу предложить не устраивать несовместимость с тем, как работает 
rpmbuild в апстриме, если есть возможность.
Также иногда предложение пятого варианта действительно позволяет решить 
зашедшие в тупик попытки разобраться с предыдущими четырьмя.

> Поскольку --enable=check/--disable=check у нас поддерживаются с 2009 
> года,
> ещё один вариант ничего, кроме большей путаницы, не принесёт.
Согласен. Но давайте признаем его основным и правильным вариантом 
отключения check.


> Можно завести и такой макрос, например,
> %if_check %if
> 0%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:1}}}}}
> > 0
> 
> Но пользоваться им будет менее удобно, потому что 3 строки хуже одной.
Это субъективно, если каждая строка как раз умещается в экран, то лучше 
3, чем одна.

> Да и имя %if_check какое-то странное.
Так я согласен на согласующееся с --enable=check/--disable=check
%if_enabled check

и всё ещё недоумеваю, почему нельзя сделать %def_enable check по 
умолчанию.

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 14:44 ` Alexey Gladkov
@ 2020-11-21 21:05   ` Andrey Savchenko
  2020-11-21 21:55     ` Alexey Gladkov
  0 siblings, 1 reply; 13+ messages in thread
From: Andrey Savchenko @ 2020-11-21 21:05 UTC (permalink / raw)
  To: ALT Linux Team development discussions; +Cc: Alexey Gladkov

[-- Attachment #1: Type: text/plain, Size: 684 bytes --]

On Sat, 21 Nov 2020 15:44:21 +0100 Alexey Gladkov wrote:
> On Sat, Nov 21, 2020 at 05:05:54PM +0300, Dmitry V. Levin wrote:
> > Hi,
> > 
> > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> > Сам макрос такой:
> > 
> > %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires: %*}}}}}
> 
> %BuildRequires_check ?

Тогда уже %BuildRequiresCheck или %BuildReqCheck
Иначе нарушается самосогласованность разделения элементов имени. 

Best regards,
Andrew Savchenko

[-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 21:05   ` Andrey Savchenko
@ 2020-11-21 21:55     ` Alexey Gladkov
  0 siblings, 0 replies; 13+ messages in thread
From: Alexey Gladkov @ 2020-11-21 21:55 UTC (permalink / raw)
  To: Andrey Savchenko; +Cc: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1162 bytes --]

On Sun, Nov 22, 2020 at 12:05:01AM +0300, Andrey Savchenko wrote:
> On Sat, 21 Nov 2020 15:44:21 +0100 Alexey Gladkov wrote:
> > On Sat, Nov 21, 2020 at 05:05:54PM +0300, Dmitry V. Levin wrote:
> > > Hi,
> > > 
> > > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> > > Сам макрос такой:
> > > 
> > > %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires: %*}}}}}
> > 
> > %BuildRequires_check ?
> 
> Тогда уже %BuildRequiresCheck или %BuildReqCheck
> Иначе нарушается самосогласованность разделения элементов имени. 

Я специально предложил именно такой вариант. В багзилле %BR4T предлагали
как альтернативу BuildRequires(check). Поэтому BuildRequires от директивы
(где camelcase), а check от секции. Разделитель не такой как в директиве,
чтобы не сливалось.

-- 
Rgrds, legion


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 17:52     ` Vitaly Lipatov
@ 2020-11-21 22:14       ` Dmitry V. Levin
  2020-11-21 23:25         ` Vitaly Lipatov
  0 siblings, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2020-11-21 22:14 UTC (permalink / raw)
  To: devel

On Sat, Nov 21, 2020 at 08:52:49PM +0300, Vitaly Lipatov wrote:
> Dmitry V. Levin писал 21.11.20 19:18:
> > On Sat, Nov 21, 2020 at 07:02:45PM +0300, Vitaly Lipatov wrote:
> >> Dmitry V. Levin писал 21.11.20 17:05:
> >> > Hi,
> >> >
> >> > Разыскивается лучшее имя для rpm-макроса с рабочим названием BR4T.
> >> > Сам макрос такой:
> >> >
> >> > %BR4T()	%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:BuildRequires:
> >> > %*}}}}}
> >> 
> >> А зачем нужна поддержка разных странных и неправильных вариантов
> >> отключения check?
> >> 
> >> Нельзя ли поддержать --nocheck в rpmbuild
> >> https://bugzilla.redhat.com/show_bug.cgi?id=1192128
> >> и отталкиваться от этого?
> > 
> > Получается, что вы хотите предложить пятый вариант включения/выключения
> > %check, но мне кажется, что нам и нынешних четырёх более чем 
> > достаточно.
> Я хочу предложить не устраивать несовместимость с тем, как работает 
> rpmbuild в апстриме, если есть возможность.
> Также иногда предложение пятого варианта действительно позволяет решить 
> зашедшие в тупик попытки разобраться с предыдущими четырьмя.

А в чём, собственно говоря, тупик?

> > Поскольку --enable=check/--disable=check у нас поддерживаются с 2009 
> > года,
> > ещё один вариант ничего, кроме большей путаницы, не принесёт.
> Согласен. Но давайте признаем его основным и правильным вариантом 
> отключения check.

Статистика использования 4 вариантов в спеках сейчас следующая:

437  %def_(en|dis)able-check
421  %def_with(out)?-check
118  %def_with(out)?-test
85   %def_(en|dis)able-test

Что предлагается делать с остальными вариантами?

> > Можно завести и такой макрос, например,
> > %if_check %if
> > 0%{!?__buildreqs:%{!?_disable_check:%{!?_without_check:%{!?_disable_test:%{!?_without_test:1}}}}}
> > > 0
> > 
> > Но пользоваться им будет менее удобно, потому что 3 строки хуже одной.
> Это субъективно, если каждая строка как раз умещается в экран, то лучше 
> 3, чем одна.
> 
> > Да и имя %if_check какое-то странное.
> Так я согласен на согласующееся с --enable=check/--disable=check
> %if_enabled check
> 
> и всё ещё недоумеваю, почему нельзя сделать %def_enable check по 
> умолчанию.

Если это сделать, то %def_disable check в спеках перестанет работать.
В одном только Сизифе таких спеков 299.


-- 
ldv


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 22:14       ` Dmitry V. Levin
@ 2020-11-21 23:25         ` Vitaly Lipatov
  2020-11-21 23:30           ` Dmitry V. Levin
  0 siblings, 1 reply; 13+ messages in thread
From: Vitaly Lipatov @ 2020-11-21 23:25 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin писал 22.11.20 1:14:
...
>> > Поскольку --enable=check/--disable=check у нас поддерживаются с 2009
>> > года,
>> > ещё один вариант ничего, кроме большей путаницы, не принесёт.
>> Согласен. Но давайте признаем его основным и правильным вариантом
>> отключения check.
> 
> Статистика использования 4 вариантов в спеках сейчас следующая:
> 
> 437  %def_(en|dis)able-check
> 421  %def_with(out)?-check
> 118  %def_with(out)?-test
> 85   %def_(en|dis)able-test
> 
> Что предлагается делать с остальными вариантами?
Признать их неправильными вариантами и не рекомендовать использовать. 
Выдавать предупреждение, что стоит их заменить.
Но вот пусть уж на «один rpm-макрос» не влияют, зачем?

...
>> и всё ещё недоумеваю, почему нельзя сделать %def_enable check по
>> умолчанию.
> 
> Если это сделать, то %def_disable check в спеках перестанет работать.
> В одном только Сизифе таких спеков 299.
Конечно, я надеялся на ожидаемое поведение, что можно подряд написать
%def_enable check
%def_disable check

А так эта история не лучше, чем bcond_with. Мне кажется, это всё осколки 
цивилизации, где всё делалось как проще реализовать, а не как удобнее 
пользоваться.

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 23:25         ` Vitaly Lipatov
@ 2020-11-21 23:30           ` Dmitry V. Levin
  2020-11-22 10:38             ` Vitaly Lipatov
  0 siblings, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2020-11-21 23:30 UTC (permalink / raw)
  To: devel

On Sun, Nov 22, 2020 at 02:25:41AM +0300, Vitaly Lipatov wrote:
[...]
> Конечно, я надеялся на ожидаемое поведение, что можно подряд написать
> %def_enable check
> %def_disable check

В первой строке написано: включить, если не включено и не выключено.
Во второй строке написано: выключить, если не включено и не выключено.

Какого вы ожидали поведения от такой записи?


-- 
ldv


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-21 23:30           ` Dmitry V. Levin
@ 2020-11-22 10:38             ` Vitaly Lipatov
  2020-11-22 18:21               ` Michael Shigorin
  0 siblings, 1 reply; 13+ messages in thread
From: Vitaly Lipatov @ 2020-11-22 10:38 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Dmitry V. Levin писал 22.11.20 2:30:
> On Sun, Nov 22, 2020 at 02:25:41AM +0300, Vitaly Lipatov wrote:
> [...]
>> Конечно, я надеялся на ожидаемое поведение, что можно подряд написать
>> %def_enable check
>> %def_disable check
> 
> В первой строке написано: включить, если не включено и не выключено.
> Во второй строке написано: выключить, если не включено и не выключено.
> 
> Какого вы ожидали поведения от такой записи?
Я ожидал поведения, аналогичного #define в C. Но понял напрасность своих 
ожиданий, спасибо за терпеливое разъяснение.

Таким образом, умолчательное состояние у нас записывается в логике 
используемых макросов, и не может быть задано глобально иным способом.

Например, %BR4T задаёт утверждение, что check включен по умолчанию, но 
может быть выключен одним из способов.

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

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [devel] Q: лучшее имя для одного rpm-макроса
  2020-11-22 10:38             ` Vitaly Lipatov
@ 2020-11-22 18:21               ` Michael Shigorin
  0 siblings, 0 replies; 13+ messages in thread
From: Michael Shigorin @ 2020-11-22 18:21 UTC (permalink / raw)
  To: devel

On Sun, Nov 22, 2020 at 01:38:25PM +0300, Vitaly Lipatov wrote:
> Таким образом, умолчательное состояние у нас записывается в логике 
> используемых макросов, и не может быть задано глобально иным способом.

Ну почему, rpm вполне себе принимает --define,
а также --enable/--disable/--with/--without;
в hsh(1) их можно передать через rpmargs,
в girar -- через GB_REPO_RPMARGS.

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2020-11-22 18:21 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-21 14:05 [devel] Q: лучшее имя для одного rpm-макроса Dmitry V. Levin
2020-11-21 14:13 ` Alexey V. Vissarionov
2020-11-21 14:44 ` Alexey Gladkov
2020-11-21 21:05   ` Andrey Savchenko
2020-11-21 21:55     ` Alexey Gladkov
2020-11-21 16:02 ` Vitaly Lipatov
2020-11-21 16:18   ` Dmitry V. Levin
2020-11-21 17:52     ` Vitaly Lipatov
2020-11-21 22:14       ` Dmitry V. Levin
2020-11-21 23:25         ` Vitaly Lipatov
2020-11-21 23:30           ` Dmitry V. Levin
2020-11-22 10:38             ` Vitaly Lipatov
2020-11-22 18:21               ` Michael Shigorin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git