id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc	lang	patch	platform
1504	config/auto/arch.pm:  Uninitialized value warning on Darwin due to change in order of configuration steps	jkeenan	jkeenan	"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"	bug	closed	normal		configure	2.1.0	medium	fixed	configure byteorder arch	Coke Tene dukeleto		applied	darwin
