diff -Nurd -x'*~' namespace-clean-0.27.orig/t/10-pure-perl.t namespace-clean-0.27/t/10-pure-perl.t
--- namespace-clean-0.27.orig/t/10-pure-perl.t	2016-04-09 23:38:56.000000000 -0400
+++ namespace-clean-0.27/t/10-pure-perl.t	2018-01-23 11:04:48.000000000 -0500
@@ -1,6 +1,7 @@
 use strict;
 use warnings;
 use Test::More;
+use Config;
 
 BEGIN {
   plan skip_all => "PP tests already executed"
@@ -46,7 +47,6 @@
 
 # for the $^X-es
 $ENV{PERL5LIB} = join ($Config{path_sep}, @INC);
-$ENV{PATH} = '';
 
 
 # rerun the tests under the assumption of pure-perl
@@ -56,7 +56,21 @@
 
   next if abs_path($fn) eq $this_file;
 
-  my @cmd = map { $_ =~ /(.+)/ } ($^X, $fn);
+  my @cmd;
+  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 @cmd, '/usr/bin/arch';
+      if ( $Config{"longsize"} == 4 ) {
+         push @cmd, '-i386';   # 32-bit
+      } else {
+         push @cmd, '-x86_64'; # 64-bit
+      }
+  }
+  push @cmd, map { $_ =~ /(.+)/ } ($^X, $fn);
 
   # this is cheating, and may even hang here and there (testing on windows passed fine)
   # if it does - will have to fix it somehow (really *REALLY* don't want to pull