Если в CPAN модуле присутствует read-only файл скрипта (т.е. файл, который включён в EXE_FILES в Makefile.PL), то при сборке модуля происходит ошибка. $ LANG=C make cp bin/script.pl blib/script/script.pl /usr/bin/perl5.16.1 "-Iinc" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/script.pl Can't process 'blib/script/script.pl': Permission denied at -e line 1. make: *** [blib/script/script.pl] Error 13 В оригинальном ExtUtils::MakeMaker такой проблемы нет, проблема вызвана alt-specific патчем http://git.altlinux.org/gears/p/perl.git?p=perl.git;a=commitdiff;h=c604e9e С одной стороны понятно, что исправить файл на месте лучше, чем создавать небезопасным образом временный файл, но зато открыть readonly файл в режиме O_RDWR не получится. Думаю, что необходимо доработать патч и выставлять бит +w на файл на время внесения имзенений.
Мне кажется что rpm вставляет в конце секции %prep команду chmod -c u+w а дальше не помню! То есть при сборке rpm пакета такого вылезти не может. А при самосборе тарболла может и может. Думаю, можно сделать chmod 0755 перед открытием в безусловном порядке.