Re: bootstrap macro

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/14/2011 07:42 AM, Iain Arnell wrote:
> On Mon, Jun 27, 2011 at 7:28 PM, Marcela Maslanova<mmaslano@xxxxxxxxxx>  wrote:
>> Hello list,
>> you might notice that rebuild stopped for a while. I run out of packages, which had "normal" dependencies. Now I have a list of cyclic dependencies, which are dependent back and forth.
>> Because we'll be doing mass rebuild every year, I'd like to use bootstrap macro, which could help us little.
>> You can see example in perl-HTTP-Lite. There were dependencies for test suite like Test::Pod.
>>
>> The macro perl_bootstrap is actually set to 1. After rebuild will be done, it will be switched to 0. So, now are marked buildrequires or test suites switched off. I'd like to use it at least in packages, which caused major problems. Please note that it doesn't broke your specfiles in EPEL.
>>
>> Example:
>> BuildArch:      noarch
>> BuildRequires:  perl(ExtUtils::MakeMaker)
>> %if !%{defined perl_bootstrap}
>> BuildRequires:  perl(Test::CPAN::Meta)
>> BuildRequires:  perl(Test::MinimumVersion)
>> BuildRequires:  perl(Test::Pod)
>> %endif
>> Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
>>
>> %{?perl_default_filter}
>> ...
>> %check
>> # most real tests require network access - ignore "skipping test on this
>> # platform" messages
>> %if !%{defined perl_bootstrap}
>> RELEASE_TESTING=1 make test
>> %endif

I'd like to see comments added regarding the use of perl-bootstrap to 
show where the circular dependency is; these cycles may change over time 
as module implementations change, and some upstream module writers 
explicitly drop dependencies to avoid cycles, so it's useful to know why 
a BR was guarded by perl_bootstrap as it may be possible to remove it at 
a later date.

I've just added this in perl-Net-SSLeay for instance:

# Test::Kwalitee => Module::CPANTS::Analyze => Net::HTTP => 
IO::Socket::SSL => Net::SSLeay
%if 0%{!?perl_bootstrap:1}
BuildRequires:	perl(Test::Kwalitee)
%endif

Paul.
--
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


[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Legacy Announce]     [Fedora PHP Devel]     [Kernel Devel]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Big List of Linux Books]     [Gimp]     [Yosemite Information]
  Powered by Linux