From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ivan Zakharyaschev To: Subject: Re: [devel] rpm macros In-Reply-To: <20001112135503.A2508@localhost.localdomain> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=koi8-r Content-Transfer-Encoding: 8BIT Sender: devel-admin@linux.iplabs.ru Errors-To: devel-admin@linux.iplabs.ru X-BeenThere: devel@linux.iplabs.ru X-Mailman-Version: 2.0beta6 Precedence: bulk Reply-To: devel@linux.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: IPLabs Linux Team Developers mailing list List-Unsubscribe: , List-Archive: http://www.logic.ru/pipermail/devel/ X-Original-Date: Sun, 12 Nov 2000 17:07:03 +0300 (MSK) Date: Sun, 12 Nov 2000 17:07:03 +0300 (MSK) Archived-At: List-Archive: List-Post: 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