[devel] [#136224] DONE (try 2) perl.git=5.20.1-alt1

Igor Vlasenko vlasenko на imath.kiev.ua
Вс Дек 14 00:22:47 MSK 2014


On Sat, Dec 13, 2014 at 09:03:31PM +0300, Vladimir Lettiev wrote:
> On Sat, Dec 13, 2014 at 03:38:11AM +0000, Girar Builder pender robot wrote:
> > http://git.altlinux.org/tasks/archive/done/_133/136224/logs/events.2.3.log
> 
> Игорь, спасибо за новую сборку Perl.
> 
> Много ли пакетов, где сломались тесты при обновлении, т.е. которые надо
> чинить?

Прошу прощения, 
у меня обновление только началось, мне еще болше тысячи пакетов
пересобрать в autoimports, там же основные разломы.

в Сизифе это openldap (баг повешен)
а по сути perl -
apache2-mod_perl (там причина понятна, это изменение в perl)
и perl-RPM (стал ругаться написанный Алексеем Турбиным тест на Devel::Leak, 
и непонятно, кто виноват: то ли  Devel::Leak, то ли RPM).
perl-RPM и Devel-Leak и тот тест все прошли через руки 
Алексея Турбина, я когда закончу пересборку autoimports
и начну починку/обновление, думаю написать ему,
спросить совета.

я веду заметки об обновлении perl (неоконченные)
см. 
http://git.altlinux.org/people/viy/packages/?p=perl.git;a=blob;f=altlinux/maintainer_notes/Сборка+Perl+5.20.1.txt;h=0a093d60a11d205bf5f509132a3824d415015467;hb=viydev

вот на эту часть взгляните, пожалуйста.

=== подготовка perl.git и сборка perl-5.20.1 ===

После клонирования perl.git первым делом сделал 
git fetch -t git://perl5.git.perl.org/perl.git
и запустил git git merge v5.20.1.

Получив кучу конфликтов, убедился, что в истории git
между ветвями не перепрыгнешь, и придется для gear
создавать каталог с исходниками и правки заново, и
делать фиктивное наследование с git merge -s ours.

К сожалению, я не сразу ознакомился с записками
Владимира Леттиева (crux@) об обновлении до 5.18.1,
см. https://blog.truecrux.org/post/xxxix
и копия в perl.git/altlinux/maintainer_notes/Сборка Perl 5.18.1.html,
поэтому пошел своим путем.

Рассудив, что раз изменения все равно придется переносить вручную,
то сделаю их так, как мне удобно. 

Решил исходники в сборочной ветке не держать, все равно они собираются 
из тега (директивой tar: v на version@:.) а хранить там только altlinux-
specific файлы: perl.spec, .gear, *.patch, и т.д., и
вместо git cherry-pick экспортировал каждую правку в отдельный .patch:
git show ed761f244b0a81f90292c55dc0267007e98a1de0 > perl-5.20.1-alt-at-no-rpath-for-std-libs.patch

C одной стороны, это другая схема, чем та, которую использовал Алексей
Турбин (с переносом правок с помощью git cherry-pick и монолитным
патчем), с другой стороны, если следующему майнтайнеру моя схема
удобна не будет, ничего не мешает вернуться к старой схеме или любой
другой через неизбежный git merge -s ours.

Прежде чем собирать новый perl, надо сделать bootstrap для
rpm-build-perl, временно превратив rpm-build-perl в noarch пакет.
Также у меня локально пришлось отключить сервис ntpd,
иначе выбивали тесты модуля Time/HiRes.

-- 

I V


Подробная информация о списке рассылки Devel