On Thu, Feb 07, 2013 at 04:11:08PM +0000, Paul Howarth wrote: > Hi Petr, > > On 05/02/13 15:16, Petr Pisar wrote: > > # Tests: > > BuildRequires: perl(Test::More) >= 0.6 > >+%if !%{defined perl_bootstrap} > >+# Break circular dependency Pod::Checker <-> Pod::Parser > >+BuildRequires: perl(Pod::Checker) >= 1.40 > >+# Break circular dependency Pod::Usage <-> Pod::Select > >+BuildRequires: perl(Pod::Usage) > >+%endif > > Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) > > ... > > > %check > >+%if %{defined perl_bootstrap} > >+# Break circular dependency Pod::Usage <-> Pod::Select > >+rm -f t/pod/headings.t > >+%endif > > make test > > > > %files > > %doc ANNOUNCE CHANGES README TODO > >-%{_bindir}/* > >+%if %{defined perl_bootstrap} > >+# Break circular dependency Pod::Usage <-> Pod::Select > >+%exclude %{_bindir}/podselect > >+%else > >+%{_bindir}/podselect > >+%endif > > These efforts to avoid a circular dependency between Pod::Parser and > Pod::Usage don't actually work because ExtUtils::MakeMaker requires > perl-podlators, which requires Pod::Usage, so it's pulled in anyway. > I know. Initially, I thought it will be necessary to upgrade Pod::Parser without breaking build-root, but it turned out it was not necessary. > There are a number of dual-lived packages for which circular > dependencies seem to be quite unavoidable and need special treatment > when bootstrapping, e.g.: > I think it's not possible to bootstrap dual-lived core packages without core perl sub-packages. Mainly because they are not written in the way. One could split scripts from libraries which would help at least with Pod::Usage, but I believe it would not fix all issues. Therefore I'm not going to deal with breaking cycles in these packages. (Bootstrap on next rebuild will enable dual-lived perl sub-packages, then it will rebuild standalone dual-lived packages, and then it will disable dual-lived sub-packages again. Therefore I guard the sub-packages with perl_bootstrap.) -- Petr
Attachment:
pgpIh8Q_DJI3W.pgp
Description: PGP signature
-- Fedora Extras Perl SIG http://www.fedoraproject.org/wiki/Extras/SIGs/Perl perl-devel mailing list perl-devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/perl-devel