Paul Cochrane wrote:
in the file lib/Parrot/Configure.pm there is the todo item:
# XXX cc_build uses this verbose setting, why?
$self->data->set( verbose => $verbose ) if $n > 2;
Work out why, add an explanation to this ticket and to the code.
I posed this question to the list on April 16, but didn't get any
response. Maybe second time's the charm?
James Keenan wrote:
> In lib/Parrot/Configure.pm there is the following code (trunk: starting
> at line 254):
>
> # XXX cc_build uses this verbose setting, why?
> $self->data->set( verbose => $verbose ) if $n > 2;
>
> $n is the index in the array of configuration steps of the step
> currently being processed. $verbose is a value passed to _runsteps()
> from the surrounding method runsteps(), which in turn is the value for
> the 'verbose' option passed to Configure.pl:
>
> sub runsteps { # trunk: line 184
> my $self = shift;
>
> my ( $verbose, $verbose_step, $ask ) =
> $self->options->get(qw(verbose verbose-step ask));
>
> my $n = 0; # step number
> foreach my $task ( $self->steps ) {
> $n++;
> $self->_runstep( $task, $verbose, $verbose_step, $ask, $n );
>
> So that means that if we're on the 4th configuration step
> (init::miniparrot) or later, make the current step's verbose setting
> have the value passed into the 'verbose' option to Configure.pl.
>
> My questions:
>
> 1. Is my interpretation correct?
> 2. If so, why should this only apply beginning with the 4th
> configuration step? Why not right from the 1st step?
> 3. And what does the XXX comment mean? cc_build(), which is a method
> from lib/Parrot/Configure/Step.pm, is not the only step utility method
> that has a verbose setting. Why should it be singled out here?
>
> Thank you very much.
> kid51
>