As promised, er, a few months ago, here is a patch that makes Inline
work reliably when there is more than one perl installed, and all *think*
that they are (say) /usr/local/bin/perl

With this Inline will "believe" $^X in preference to $Config{perlpath}
if $^X is an absolute path, so that Inline will get the same perl as is
running the script, despite the sysadmin's best efforts to confuse things
by installing more perl versions.

Nicholas Clark

--- C/C.pm~     Thu Nov  7 14:23:34 2002
+++ C/C.pm      Fri Dec 13 12:06:12 2002
@@ -696,7 +696,12 @@ sub compile {
 sub makefile_pl {
     my ($o) = @_;
     my $perl;
-    -f ($perl = $Config::Config{perlpath})
+    # 5.8.0 (and later) attempts to find the full path of $^X whenever
+    # possbile (certainly FreeBSD, Linux and Solaris)
+    # Trust $^X first, in case the user acutually has multiple perl versions
+    # installed, and all believe that they're /usr/local/bin/perl
+    File::Spec->file_name_is_absolute ($perl = $^X)
+      or -f ($perl = $Config::Config{perlpath})
       or ($perl = $^X)
       or croak "Can't locate your perl binary";
     $o->system_call("$perl Makefile.PL", 'out.Makefile_PL');

Reply via email to