But one more thought ... How will creating an 'osname' key from $^O affect/be affected by all the fiddling done with OS and platform names in config/auto/jit.pm?
[parrot] 512 $ grep -n osname config/auto/jit.pm 49: my ( $cpuarch, $osname ) = split( /-/, $archname ); 56: if ( !defined $osname ) { 57: ( $osname, $cpuarch ) = ( $cpuarch, q{} ); 66: $osname = 'darwin'; 75: # cpuarch and osname are reversed in archname on windows 77: $cpuarch = ( $osname =~ /x64/ ) ? 'amd64' : 'i386'; 78: $osname = 'MSWin32'; 80: elsif ( $osname =~ /cygwin/i || $cpuarch =~ /cygwin/i ) { 82: $osname = 'cygwin'; 93: warn "osname: $osname\ncpuarch: $cpuarch\n" if $verbose; 98: osname => $osname 101: my $jitarchname = "$cpuarch-$osname"; 125: if ( $cpuarch eq 'i386' && $osname eq 'darwin' ) { 147: my ( $jitcpuarch, $jitosname ) = split( /-/, $jitarchname ); 153: jitosname => uc($jitosname), 165: unless ( ( $osname eq 'openbsd' ) 166: || ( $osname eq 'freebsd' ) 167: || ( $osname eq 'netbsd' ) 168: || ( $osname eq 'linux' ) 169: || ( $osname eq 'darwin' ) 170: || ( $osname eq 'MSWin32' ) ) 195: if ( -e "config/auto/jit/test_exec_$osname.in" ) { 197: cc_gen("config/auto/jit/test_exec_$osname.in"); 231: jitosname => $osname,