Bug 27836 - проблема с изменением read-only файлов скриптов
Summary: проблема с изменением read-only файлов скриптов
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: perl-devel (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: at@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-10-12 15:14 MSK by Vladimir Lettiev
Modified: 2012-10-12 16:02 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Lettiev 2012-10-12 15:14:11 MSK
Если в 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 на файл на время внесения имзенений.
Comment 1 at@altlinux.org 2012-10-12 16:02:30 MSK
Мне кажется что rpm вставляет в конце секции %prep команду chmod -c u+w а дальше не помню!  То есть при сборке rpm пакета такого вылезти не может.  А при самосборе тарболла может и может.  Думаю, можно сделать chmod 0755 перед открытием в безусловном порядке.