Итак, написать регулярное выражение, которе идеально отлавливало бы все перловые зависимости, оказалось не так просто, как я сначала предполагал. Здесь одним и даже несколькими регулярными выражениями не отделаться, все пути ведут к последовательности регулярных выражений с конечным числом состояний. В определенный момент я даже подумал, что правильнее было бы что-нибудь слабать на бизоне. К счастью, у меня нет опыта лабания на бизоне. :) Всех заинтересованных лиц прошу запустить: $ perl.req --debug --method=strict /usr/lib/perl5/**/*.pm 2>&1 | less $ perl.req --debug --method=normal /usr/lib/perl5/**/*.pm 2>&1 | less $ perl.req --debug --method=relaxed /usr/lib/perl5/**/*.pm 2>&1 | less (zsh globbing) и подумать, все ли их устраивает. 2ldv: rpm пишет: /var/tmp/rpm-tmp.30255: export RPM_PERL_REQ_METHOD=" relaxed" Почему пробел, я не понял. On Fri, Nov 01, 2002 at 12:34:33AM +0300, at@turbinal.org wrote: > - normal -- то же, что и strict, плюс следующие ограничения: > + ^\s*use > + ^\s*require > + ^\s*do > + !(if|unless|eval) if,unless,eval я решил перенести в relaxed, т.к. по смыслу relaxed как раз предназначен для отсеивания условных зависимостей. > + фильтрация по списку файлов и списку зависимостей > > - relaxed -- то же самое, что и normal, плюс следующие ограничения: > + ^require > + ^do > > - none -- не поддерживается, нужно явно указать: AutoReq: yes, noperl > > > В целом же, нужно понимать, что абсолютно точно perl.req работать не > может, статус его близок к /usr/bin/buildreq. Метод "normal" должен быть > приемлем для большинства пакетов.