#1504: config/auto/arch.pm: Uninitialized value warning on Darwin due to change
in order of configuration steps
-----------------------+----------------------------------------------------
Reporter: jkeenan | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: configure | Version: 2.1.0
Severity: medium | Keywords: configure byteorder arch
Lang: | Patch:
Platform: darwin |
-----------------------+----------------------------------------------------
When I configure on my Darwin/PPC, I get this warning:
{{{
auto::arch - Determine CPU architecture and OS...
.... Use of uninitialized value in pattern match (m//)
at config/auto/arch.pm line 63.
...............done.
}}}
In ''config/auto/arch.pm'' we have this code (r44573) inside the `runstep`
method (some lines rebroken for readability in Trac):
{{{
# On OS X if you are using the Perl that shipped
# with the system the above split fails because
# archname is "darwin-thread-multi-2level".
if ( $cpuarch =~ /darwin/ ) {
$osname = 'darwin';
if ( $conf->data->get('byteorder') =~ /^1234/ ) { # <--LINE 63
$cpuarch = 'i386';
}
else {
$cpuarch = 'ppc';
}
}
}}}
We are getting an uninitialized value for `$conf->data->get('byteorder')`
because config step `auto::arch`, as part of the merge-in of the
''rm_cflags'' branch, was moved to '''precede''' config step
`auto::byteorder` rather than following it as was always previously the
case.
I don't yet know the full impact of this bug. At the moment, I am trying
to build Parrot on Darwin for the first time since that branch merge. But
that's on PPC; from the above code, I suspect that `$cpuarch` will be set
to PPC whether that's the case or not.
Suggestions?
Thank you very much.
kid51
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1504>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets