[devel] Q: Проверка спека на присутствие макроса.
Aleksey Avdeev
=?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Вт Авг 12 02:27:18 MSD 2008
Alexey Tourbin пишет:
> On Tue, Aug 12, 2008 at 02:00:59AM +0400, Aleksey Avdeev wrote:
>> Alexey Tourbin пишет:
>>> On Tue, Aug 12, 2008 at 01:48:36AM +0400, Aleksey Avdeev wrote:
>>>> Решая задачу проверки использования
>>>> (не объявления) макроса в спеке
>>>> нарисовал такое регулярное выражение
>>>> (для egrep):
>>>>
>>>> '%(<макрос>($|[^[:alnum:]_])|([{](<макрос>[}]|(|!)\?<макрос>[:}])))'
>>>>
>>>> Вопросы:
>>>>
>>>> 1. Все ли случаи я учёл?
>>> %% работает как escape для %.
>> Тогда:
>>
>> '(^|[^%])%(a_b($|[^[:alnum:]_])|([{](a_b[}]|(|!)\?a_b[:}])))'
>
> Контрпример: %%%_libdir. Если привязываться регулярным выражением
> к первому "%", то потребуется неограниченный look-behind: значащему
> знаку "%" должно предшествовать четное количетво знаков "%".
OK. Есть штатные средства для такой проверки? (Или можно ли заставить
rpm -bM не проверять наличие сорцов?)
--
С уважением. Алексей.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 552 байтов
Описание: OpenPGP digital signature
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080812/0cd6e5d7/attachment-0002.bin>
Подробная информация о списке рассылки Devel