diff -Nurd -x'*~' Package-Stash-XS-0.18.orig/t/00-compile.t Package-Stash-XS-0.18/t/00-compile.t --- Package-Stash-XS-0.18.orig/t/00-compile.t 2011-01-05 14:18:07.000000000 -0500 +++ Package-Stash-XS-0.18/t/00-compile.t 2011-01-06 01:09:26.000000000 -0500 @@ -6,6 +6,7 @@ use Test::More; use File::Find; use File::Temp qw{ tempdir }; +use Config; my @modules; find( @@ -30,7 +31,21 @@ # fake home for cpan-testers # no fake requested ## local $ENV{HOME} = tempdir( CLEANUP => 1 ); - like( qx{ $^X -Ilib -e "require $_; print '$_ ok'" }, qr/^\s*$_ ok/s, "$_ loaded ok" ) + my @command; + if ($] >= 5.010 && $Config{"byteorder"} =~ /^1/) { + # little-endian means intel (not powerpc), for which fink has + # multiple single-arch distros that are seen by a single (fat) + # perl interp from apple for a perl version supported by fink + # (i.e., starting with 5.10.0). This is the logic taken from + # Fink::PkgVersion as of fink-0.29.13. + push @command, '/usr/bin/arch'; + if ( $Config{"longsize"} == 4 ) { + push @command, '-i386'; # 32-bit + } else { + push @command, '-x86_64'; # 64-bit + } + } + like( qx{ @command $^X -Ilib -e "require $_; print '$_ ok'" }, qr/^\s*$_ ok/s, "$_ loaded ok" ) for sort @modules; SKIP: {