ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] rpm macros
@ 2000-11-10 15:12 Mikhail Zabaluev
  2000-11-11 21:25 ` Dmitry V. Levin
  2000-11-11 22:06 ` Ivan Zakharyaschev
  0 siblings, 2 replies; 13+ messages in thread
From: Mikhail Zabaluev @ 2000-11-10 15:12 UTC (permalink / raw)
  To: devel

Доброе время суток.

Кто-нибудь может объяснить, почему при следующем изменении в
/usr/lib/rpm/macros для rpm-3.0.6-ipl4mdk.compat получается бесконечный цикл:

--- macros.orig	Thu Nov  9 22:14:41 2000
+++ macros	Thu Nov  9 22:54:32 2000
@@ -726,8 +726,8 @@
 %{___build_post}
 
 # mdk compatibility
-%_install_info	%install_info
-%_remove_install_info	%uninstall_info
+%_install_info()	%{install_info %*}
+%_remove_install_info()	%{uninstall_info %*}
 %_initrddir	%_initdir
 
 # BEGIN GLIBC TRICKS
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-10 15:12 [devel] rpm macros Mikhail Zabaluev
@ 2000-11-11 21:25 ` Dmitry V. Levin
  2000-11-12  1:01   ` Mikhail Zabaluev
  2000-11-11 22:06 ` Ivan Zakharyaschev
  1 sibling, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2000-11-11 21:25 UTC (permalink / raw)
  To: devel

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

On Fri, Nov 10, 2000 at 06:12:48PM +0300, Mikhail Zabaluev wrote:
> Кто-нибудь может объяснить, почему при следующем изменении в
> /usr/lib/rpm/macros для rpm-3.0.6-ipl4mdk.compat получается бесконечный цикл:
> 
> --- macros.orig	Thu Nov  9 22:14:41 2000
> +++ macros	Thu Nov  9 22:54:32 2000
> @@ -726,8 +726,8 @@
>  %{___build_post}
>  
>  # mdk compatibility
> -%_install_info	%install_info
> -%_remove_install_info	%uninstall_info
> +%_install_info()	%{install_info %*}
> +%_remove_install_info()	%{uninstall_info %*}
>  %_initrddir	%_initdir

Не знаю, но зачем это может понадобиться?

Кстати, я планирую убрать опцию "-e" у макросов
%install_info/%uninstall_info за ненадобностью - с точки зрения build
policy правильнее патчить исходные .texi-файлы.

В данное время существует ровно 7 пакетов, еще использующих "-e" (их в
devel нет), в кратчайшие сроки я это исправлю и эту опцию из макросов уберу.


Regards,
	Dmitry

+-------------------------------------------------------------------------+
Dmitry V. Levin     mailto://ldv@fandra.org
Software Engineer   PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html
IPLabs Linux Team   http://linux.iplabs.ru
Fandra Project      http://www.fandra.org
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who it's friends are.

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

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

* Re: [devel] rpm macros
  2000-11-10 15:12 [devel] rpm macros Mikhail Zabaluev
  2000-11-11 21:25 ` Dmitry V. Levin
@ 2000-11-11 22:06 ` Ivan Zakharyaschev
  2000-11-11 23:29   ` Dmitry V. Levin
  1 sibling, 1 reply; 13+ messages in thread
From: Ivan Zakharyaschev @ 2000-11-11 22:06 UTC (permalink / raw)
  To: devel

On Fri, 10 Nov 2000, Mikhail Zabaluev wrote:

> Кто-нибудь может объяснить, почему при следующем изменении в
> /usr/lib/rpm/macros для rpm-3.0.6-ipl4mdk.compat получается бесконечный
> цикл:

Объяснить не могу, могу сообщить, что следующие определения (не связанные
ни с чем больше) в ~/.rpmmacros тоже вызывают бесконечную рекурсию:

%embrace()          %brace %1
%brace()            begin %1 end

при попытке сделать

$ rpm --eval='%embrace a b'

У меня rpm-3.0.6-ipl4mdk. Может, ничего неправильно в такой обработке и
нет, надо понять, по каким правилам она происходит.

> --- macros.orig	Thu Nov  9 22:14:41 2000
> +++ macros	Thu Nov  9 22:54:32 2000
> @@ -726,8 +726,8 @@
>  %{___build_post}
>
>  # mdk compatibility
> -%_install_info	%install_info
> -%_remove_install_info	%uninstall_info
> +%_install_info()	%{install_info %*}
> +%_remove_install_info()	%{uninstall_info %*}
>  %_initrddir	%_initdir
>
>  # BEGIN GLIBC TRICKS

-- 
Best regards,
      Ivan Z.

_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-11 22:06 ` Ivan Zakharyaschev
@ 2000-11-11 23:29   ` Dmitry V. Levin
  2000-11-12  9:46     ` Ivan Zakharyaschev
  0 siblings, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2000-11-11 23:29 UTC (permalink / raw)
  To: devel

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

On Sun, Nov 12, 2000 at 01:06:54AM +0300, Ivan Zakharyaschev wrote:
> > Кто-нибудь может объяснить, почему при следующем изменении в
> > /usr/lib/rpm/macros для rpm-3.0.6-ipl4mdk.compat получается бесконечный
> > цикл:
> 
> Объяснить не могу, могу сообщить, что следующие определения (не связанные
> ни с чем больше) в ~/.rpmmacros тоже вызывают бесконечную рекурсию:
> 
> %embrace()          %brace %1
> %brace()            begin %1 end
> 
> при попытке сделать
> 
> $ rpm --eval='%embrace a b'
> 
> У меня rpm-3.0.6-ipl4mdk. Может, ничего неправильно в такой обработке и
> нет, надо понять, по каким правилам она происходит.

Это странно, буду разбираться.


Regards,
	Dmitry

+-------------------------------------------------------------------------+
Dmitry V. Levin     mailto://ldv@fandra.org
Software Engineer   PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html
IPLabs Linux Team   http://linux.iplabs.ru
Fandra Project      http://www.fandra.org
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who it's friends are.

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

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

* Re: [devel] rpm macros
  2000-11-11 21:25 ` Dmitry V. Levin
@ 2000-11-12  1:01   ` Mikhail Zabaluev
  0 siblings, 0 replies; 13+ messages in thread
From: Mikhail Zabaluev @ 2000-11-12  1:01 UTC (permalink / raw)
  To: devel

Hello Dmitry,

On Sun, Nov 12, 2000 at 00:25 +0300, Dmitry V. Levin wrote:
>
> On Fri, Nov 10, 2000 at 06:12:48PM +0300, Mikhail Zabaluev wrote:
> > Кто-нибудь может объяснить, почему при следующем изменении в
> > /usr/lib/rpm/macros для rpm-3.0.6-ipl4mdk.compat получается бесконечный цикл:

Поправлюсь: имелась в виду бесконечная рекурсия.

> > 
> > --- macros.orig	Thu Nov  9 22:14:41 2000
> > +++ macros	Thu Nov  9 22:54:32 2000
> > @@ -726,8 +726,8 @@
> >  %{___build_post}
> >  
> >  # mdk compatibility
> > -%_install_info	%install_info
> > -%_remove_install_info	%uninstall_info
> > +%_install_info()	%{install_info %*}
> > +%_remove_install_info()	%{uninstall_info %*}
> >  %_initrddir	%_initdir
> 
> Не знаю, но зачем это может понадобиться?

Дистрибутиву незачем, интересно, так сказать, в принципе: почему макросы
не работают "по правилам"? Либо я эти правила себе неверно представляю,
либо...

-- 
Stay tuned,
  MhZ                                    mailto:mookid@sigent.ru
-----------
The heart is wiser than the intellect.
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-11 23:29   ` Dmitry V. Levin
@ 2000-11-12  9:46     ` Ivan Zakharyaschev
  2000-11-12 10:55       ` Mikhail Zabaluev
  0 siblings, 1 reply; 13+ messages in thread
From: Ivan Zakharyaschev @ 2000-11-12  9:46 UTC (permalink / raw)
  To: devel

On Sun, 12 Nov 2000, Dmitry V. Levin wrote:

> On Sun, Nov 12, 2000 at 01:06:54AM +0300, Ivan Zakharyaschev wrote:
> > Объяснить не могу, могу сообщить, что следующие определения (не
> связанные
> > ни с чем больше) в ~/.rpmmacros тоже вызывают бесконечную рекурсию:
> >
> > %embrace()          %brace %1
> > %brace()            begin %1 end
> >
> > при попытке сделать
> >
> > $ rpm --eval='%embrace a b'
> >
> > У меня rpm-3.0.6-ipl4mdk. Может, ничего неправильно в такой обработке
> и
> > нет, надо понять, по каким правилам она происходит.
>
> Это странно, буду разбираться.

Могу предложить такую модель происходящего: Сначала в поле зрения rpm
(обработчика макросов) стоит

%embrace a b

потом производится подстановка по определению embrace, а прямо перед этим
определяются макросы-параметры (%1 %2 ...): %1 = a, %2 = b; в поле зрения
оказывается новое выражение:

%brace %1

Оно обрабатывается так же: делается подстановка по определению brace, а
перед этим определяются макросы-параметры, в данном случае занята только
первая позиция (на ней стоит %1), поэтому происходит отождествление только
%1 = %1. При этом остальные определения остаются в силе, уже определенный
%2 не трогается (%2 = b). На следующем шаге получаем:

begin %1 end

rpm пытается подставить %1 по известному определению %1 -> %1 и т.д.


Другие примеры набора определений и их применения для вичисления

$ rpm --eval='%embrace a b'

%embrace()          %brace
%brace()            begin %2 %1 end
результат: begin b a end

%embrace()          %brace %1
%brace()            begin %2 end
результат: begin b end

%embrace()          %brace %2 %1
%brace()            begin %3 end
результат: begin %3 end

%embrace()          %brace %2
%brace()            begin %1 end
результат: begin b end

%embrace()          %brace %2 %1
%brace()            begin %1 end
беск. рекурсия

%embrace()          %brace %2 %1
%brace()            begin %2 end
тоже беск. рекурсия

-- 
Best regards,
      Ivan Z.

_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-12  9:46     ` Ivan Zakharyaschev
@ 2000-11-12 10:55       ` Mikhail Zabaluev
  2000-11-12 14:07         ` Ivan Zakharyaschev
  2000-11-12 16:48         ` Dmitry V. Levin
  0 siblings, 2 replies; 13+ messages in thread
From: Mikhail Zabaluev @ 2000-11-12 10:55 UTC (permalink / raw)
  To: devel

Hello Ivan,

On Sun, Nov 12, 2000 at 12:46 +0300, Ivan Zakharyaschev wrote:
>
> $ rpm --eval='%embrace a b'
> 
> %embrace()          %brace
> %brace()            begin %2 %1 end
> результат: begin b a end

То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
подставляется без параметров? Бред, так быть не должно. Эти параметры
должны быть локальными.

-- 
Stay tuned,
  MhZ                                    mailto:mookid@sigent.ru
-----------
"But this one goes to eleven."
-- Nigel Tufnel
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-12 10:55       ` Mikhail Zabaluev
@ 2000-11-12 14:07         ` Ivan Zakharyaschev
  2000-11-12 23:13           ` Mikhail Zabaluev
  2000-11-14 22:35           ` Dmitry V. Levin
  2000-11-12 16:48         ` Dmitry V. Levin
  1 sibling, 2 replies; 13+ messages in thread
From: Ivan Zakharyaschev @ 2000-11-12 14:07 UTC (permalink / raw)
  To: devel

On Sun, 12 Nov 2000, Mikhail Zabaluev wrote:

> > $ rpm --eval='%embrace a b'
> >
> > %embrace()          %brace
> > %brace()            begin %2 %1 end
> > результат: begin b a end
>
> То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
> подставляется без параметров? Бред, так быть не должно. Эти параметры
> должны быть локальными.

В какой-то документации был намек на то, что сходство параметров макросов
rpm с аналогичными вещами в shell обманчиво (там была какая-то мне мало
понятная фраза о том, что в %* попадают только еще не обработанные
параметры).

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

А как Вам вот такое: в ~/.rpmmacros все то же определение

%brace()            begin %2 %1 end

и получаем

$ rpm --eval='%{brace a b}'
begin b a end}
$

Я не знаю, что значит взятие чего-то в скобки, но одинокая правая скобка
выглядит очень странно. Если же убрать ее из исходного выражения, то rpm
начинает ругаться:
$ rpm --eval='%{brace a b'
Незакрытая {: {brace a b
  0< (пусто)

$

-- 
Best regards,
	Ivan Z.

_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-12 10:55       ` Mikhail Zabaluev
  2000-11-12 14:07         ` Ivan Zakharyaschev
@ 2000-11-12 16:48         ` Dmitry V. Levin
  2000-11-12 23:27           ` Mikhail Zabaluev
  1 sibling, 1 reply; 13+ messages in thread
From: Dmitry V. Levin @ 2000-11-12 16:48 UTC (permalink / raw)
  To: devel

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

On Sun, Nov 12, 2000 at 01:55:03PM +0300, Mikhail Zabaluev wrote:
> > $ rpm --eval='%embrace a b'
> > 
> > %embrace()          %brace
> > %brace()            begin %2 %1 end
> > результат: begin b a end
> 
> То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
> подставляется без параметров? Бред, так быть не должно. Эти параметры
> должны быть локальными.

Не совсем так: %*, %1, %2 и пр. создаются при каждом расширении по мере
надобности. Дело в том, что в rpm не существует понятия локальных
макросов. В результате, в область видимости попадают порой позиционные
параметры макроса, раскрытого уровнем выше.

Например, следующие макросы
%embrace()	%brace X %1
%brace()	%ONE %1 TWO %2 THREE %3 FOUR

по команде
$ rpm --eval='%embrace все что угодно'

раскрываются в
%ONE X TWO X THREE угодно FOUR

А если в процессе раскрытия парсер обнаружит, что %1 имеет значение %1,
или %2 - значение %2, и т.д., причем не обязательно на последнем уровне
раскрытия, то получается рекурсия.

Это все, конечно, плохо, однако именно так оно реализовано - это Вам не
cpp, где макрос, открытый один раз, выпадает из области видимости.

Какие будут предложения?


Regards,
	Dmitry

+-------------------------------------------------------------------------+
Dmitry V. Levin     mailto://ldv@fandra.org
Software Engineer   PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html
IPLabs Linux Team   http://linux.iplabs.ru
Fandra Project      http://www.fandra.org
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who it's friends are.

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

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

* Re: [devel] rpm macros
  2000-11-12 14:07         ` Ivan Zakharyaschev
@ 2000-11-12 23:13           ` Mikhail Zabaluev
  2000-11-14 22:35           ` Dmitry V. Levin
  1 sibling, 0 replies; 13+ messages in thread
From: Mikhail Zabaluev @ 2000-11-12 23:13 UTC (permalink / raw)
  To: devel

Hello Ivan,

On Sun, Nov 12, 2000 at 17:07 +0300, Ivan Zakharyaschev wrote:
>
> On Sun, 12 Nov 2000, Mikhail Zabaluev wrote:
> 
> > > $ rpm --eval='%embrace a b'
> > >
> > > %embrace()          %brace
> > > %brace()            begin %2 %1 end
> > > результат: begin b a end
> >
> > То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
> > подставляется без параметров? Бред, так быть не должно. Эти параметры
> > должны быть локальными.
> 
> В какой-то документации был намек на то, что сходство параметров макросов
> rpm с аналогичными вещами в shell обманчиво (там была какая-то мне мало
> понятная фраза о том, что в %* попадают только еще не обработанные
> параметры).

Там говорится о том, что все опции вида -<буква> [<аргумент>], описанные в
скобках после имени макроса, не попадают в позиционные параметры.

> Вообще, мне кажется плохой идея создателей rpm создать свой
> специализированный язык макроопределений, не во всем похожий на уже
> существующие, которых и так много.
> 
> А как Вам вот такое: в ~/.rpmmacros все то же определение
> 
> %brace()            begin %2 %1 end
> 
> и получаем
> 
> $ rpm --eval='%{brace a b}'
> begin b a end}

Явный глюк. Фигурные скобки используются, чтобы явно заключать имя и
параметры макроса в объемлющем тексте.

-- 
Stay tuned,
  MhZ                                    mailto:mookid@sigent.ru
-----------
Nice guys don't finish nice.
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-12 16:48         ` Dmitry V. Levin
@ 2000-11-12 23:27           ` Mikhail Zabaluev
  2000-11-13 10:14             ` Dmitry V. Levin
  0 siblings, 1 reply; 13+ messages in thread
From: Mikhail Zabaluev @ 2000-11-12 23:27 UTC (permalink / raw)
  To: devel

Hello Dmitry,

On Sun, Nov 12, 2000 at 19:48 +0300, Dmitry V. Levin wrote:
>
> On Sun, Nov 12, 2000 at 01:55:03PM +0300, Mikhail Zabaluev wrote:
> > > $ rpm --eval='%embrace a b'
> > > 
> > > %embrace()          %brace
> > > %brace()            begin %2 %1 end
> > > результат: begin b a end
> > 
> > То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
> > подставляется без параметров? Бред, так быть не должно. Эти параметры
> > должны быть локальными.
> 
> Не совсем так: %*, %1, %2 и пр. создаются при каждом расширении по мере
> надобности. Дело в том, что в rpm не существует понятия локальных
> макросов. В результате, в область видимости попадают порой позиционные
> параметры макроса, раскрытого уровнем выше.

Как бы это "порой" более четко сформулировать? Когда позиционные параметры
не используются подчиненным макросом, их значения сохраняются теми, что
были на уровень выше? Почему все-таки %* не инициализируется правильным
образом для каждой подстановки параметризованного макроса?

> Например, следующие макросы
> %embrace()	%brace X %1
> %brace()	%ONE %1 TWO %2 THREE %3 FOUR
> 
> по команде
> $ rpm --eval='%embrace все что угодно'
> 
> раскрываются в
> %ONE X TWO X THREE угодно FOUR

Даже по вышеописанной извращенной логике должно получаться

%ONE X TWO все THREE угодно FOUR

> А если в процессе раскрытия парсер обнаружит, что %1 имеет значение %1,
> или %2 - значение %2, и т.д., причем не обязательно на последнем уровне
> раскрытия, то получается рекурсия.
> 
> Это все, конечно, плохо, однако именно так оно реализовано - это Вам не
> cpp, где макрос, открытый один раз, выпадает из области видимости.
> 
> Какие будут предложения?

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

-- 
Stay tuned,
  MhZ                                    mailto:mookid@sigent.ru
-----------
The world is coming to an end!  Repent and return those library books!
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


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

* Re: [devel] rpm macros
  2000-11-12 23:27           ` Mikhail Zabaluev
@ 2000-11-13 10:14             ` Dmitry V. Levin
  0 siblings, 0 replies; 13+ messages in thread
From: Dmitry V. Levin @ 2000-11-13 10:14 UTC (permalink / raw)
  To: devel

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

On Mon, Nov 13, 2000 at 02:27:41AM +0300, Mikhail Zabaluev wrote:
> > > > $ rpm --eval='%embrace a b'
> > > > 
> > > > %embrace()          %brace
> > > > %brace()            begin %2 %1 end
> > > > результат: begin b a end
> > > 
> > > То есть %*, %1, %2 передаются как есть макросу "со скобочками", если он
> > > подставляется без параметров? Бред, так быть не должно. Эти параметры
> > > должны быть локальными.
> > 
> > Не совсем так: %*, %1, %2 и пр. создаются при каждом расширении по мере
> > надобности. Дело в том, что в rpm не существует понятия локальных
> > макросов. В результате, в область видимости попадают порой позиционные
> > параметры макроса, раскрытого уровнем выше.
> 
> Как бы это "порой" более четко сформулировать? Когда позиционные параметры
> не используются подчиненным макросом, их значения сохраняются теми, что
> были на уровень выше? Почему все-таки %* не инициализируется правильным
> образом для каждой подстановки параметризованного макроса?

Я недостаточно точно выразился: **, *, #, 0 переопределяются при каждом
расширении, а 1,2,3,4,... - как повезет.

> > Например, следующие макросы
> > %embrace()	%brace X %1
> > %brace()	%ONE %1 TWO %2 THREE %3 FOUR
> > 
> > по команде
> > $ rpm --eval='%embrace все что угодно'
> > 
> > раскрываются в
> > %ONE X TWO X THREE угодно FOUR
> 
> Даже по вышеописанной извращенной логике должно получаться
> 
> %ONE X TWO все THREE угодно FOUR

А вот и нет! Внимательней надо анализировать!

> > А если в процессе раскрытия парсер обнаружит, что %1 имеет значение %1,
> > или %2 - значение %2, и т.д., причем не обязательно на последнем уровне
> > раскрытия, то получается рекурсия.
> > 
> > Это все, конечно, плохо, однако именно так оно реализовано - это Вам не
> > cpp, где макрос, открытый один раз, выпадает из области видимости.
> > 
> > Какие будут предложения?
> 
> Считать обработку параметризованных макросов в rpm кривой,
> контр-интуитивной (если считать, что за образец взят механизм
> позиционных параметров shell) и не полагаться без крайней нужды на такие
> макросы.

Да, пожалуй что и так.

Насколько я помню, кагда jbj последний раз высказывался о TODO для rpm,
переписывание макросов туда не входило. Кто-нибудь хочет этим заняться?


Regards,
	Dmitry

+-------------------------------------------------------------------------+
Dmitry V. Levin     mailto://ldv@fandra.org
Software Engineer   PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html
IPLabs Linux Team   http://linux.iplabs.ru
Fandra Project      http://www.fandra.org
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who it's friends are.

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

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

* Re: [devel] rpm macros
  2000-11-12 14:07         ` Ivan Zakharyaschev
  2000-11-12 23:13           ` Mikhail Zabaluev
@ 2000-11-14 22:35           ` Dmitry V. Levin
  1 sibling, 0 replies; 13+ messages in thread
From: Dmitry V. Levin @ 2000-11-14 22:35 UTC (permalink / raw)
  To: devel

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

On Sun, Nov 12, 2000 at 05:07:03PM +0300, Ivan Zakharyaschev wrote:
> А как Вам вот такое: в ~/.rpmmacros все то же определение
> 
> %brace()            begin %2 %1 end
> 
> и получаем
> 
> $ rpm --eval='%{brace a b}'
> begin b a end}

А вот это уже моя ошибка.
Существует публично еще с 5-го июля этого года.
В принципе, не опасно, но я пофиксил (rpm-3.0.6-ipl7mdk).
Заодно пофиксил свежепосаженный в rpm-3.0.6-ipl6mdk баг
(в той же функции grabArgs).


Regards,
	Dmitry

+-------------------------------------------------------------------------+
Dmitry V. Levin     mailto://ldv@fandra.org
Software Engineer   PGP pubkey http://www.fandra.org/users/ldv/pgpkeys.html
IPLabs Linux Team   http://linux.iplabs.ru
Fandra Project      http://www.fandra.org
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who it's friends are.

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

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

end of thread, other threads:[~2000-11-14 22:35 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-10 15:12 [devel] rpm macros Mikhail Zabaluev
2000-11-11 21:25 ` Dmitry V. Levin
2000-11-12  1:01   ` Mikhail Zabaluev
2000-11-11 22:06 ` Ivan Zakharyaschev
2000-11-11 23:29   ` Dmitry V. Levin
2000-11-12  9:46     ` Ivan Zakharyaschev
2000-11-12 10:55       ` Mikhail Zabaluev
2000-11-12 14:07         ` Ivan Zakharyaschev
2000-11-12 23:13           ` Mikhail Zabaluev
2000-11-14 22:35           ` Dmitry V. Levin
2000-11-12 16:48         ` Dmitry V. Levin
2000-11-12 23:27           ` Mikhail Zabaluev
2000-11-13 10:14             ` Dmitry V. Levin

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