return $exe;
}
-my $cc = check_exe('C compiler', 'CC', 'cc', 'CC');
+my ($pp, $skip_arg);
+for my $i (0 .. $#ARGV) {
+ my $arg = $ARGV[$i];
+ if ($arg =~ /^PP=(.*)/) {
+ my $val = $1;
+ if (do { no warnings 'numeric'; int $val } or $val =~ /^(?:y|yes)$/i) {
+ print "Forcing the pure-Perl implementation from the arguments passed to Makefile.PL.\n";
+ $pp = 1;
+ $skip_arg = $i;
+ last;
+ }
+ }
+}
+if (defined $skip_arg) {
+ splice @ARGV, $skip_arg, 1;
+}
-my $ld;
-if (defined $cc) {
- $ld = check_exe('linker', 'LD', 'ld', 'LD');
+my ($cc, $ld);
+unless ($pp) {
+ $cc = check_exe('C compiler', 'CC', 'cc', 'CC');
+ if (defined $cc) {
+ $ld = check_exe('linker', 'LD', 'ld', 'LD');
+ }
}
sub is_little_endian {
$PARAMS{C} = [ ];
$PARAMS{XS} = { };
$PARAMS{OBJECT} = '';
+ print "Falling back to the pure-Perl implementation.\n";
}
$PARAMS{DEFINE} = join ' ', @DEFINES if @DEFINES;