--- a/lib/Inline/C.pm
|
|
+++ b/lib/Inline/C.pm
|
|
@@ -438,22 +438,28 @@ sub get_maps {
|
|
print STDERR "get_maps Stage\n" if $o->{CONFIG}{BUILD_NOISY};
|
|
my $typemap = '';
|
|
my $file;
|
|
- $file = File::Spec->catfile(
|
|
- $Config::Config{installprivlib},
|
|
- "ExtUtils",
|
|
- "typemap",
|
|
- );
|
|
- $typemap = $file if -f $file;
|
|
- $file = File::Spec->catfile(
|
|
- $Config::Config{privlibexp}
|
|
- ,"ExtUtils","typemap"
|
|
- );
|
|
- $typemap = $file
|
|
- if (not $typemap and -f $file);
|
|
- warn "Can't find the default system typemap file"
|
|
- if (not $typemap and $^W);
|
|
+
|
|
+ unless ($ENV{'_INLINE_C_SYSTEM_TYPEMAP_'}) {
|
|
+ $file = File::Spec->catfile(
|
|
+ $Config::Config{installprivlib},
|
|
+ "ExtUtils",
|
|
+ "typemap",
|
|
+ );
|
|
+ $typemap = $file if -f $file;
|
|
+ $file = File::Spec->catfile(
|
|
+ $Config::Config{privlibexp}
|
|
+ ,"ExtUtils","typemap"
|
|
+ );
|
|
+ $typemap = $file
|
|
+ if (not $typemap and -f $file);
|
|
+ warn "Can't find the default system typemap file"
|
|
+ if (not $typemap and $^W);
|
|
|
|
- unshift(@{$o->{ILSM}{MAKEFILE}{TYPEMAPS}}, $typemap) if $typemap;
|
|
+ unshift(@{$o->{ILSM}{MAKEFILE}{TYPEMAPS}}, $typemap) if $typemap;
|
|
+ }
|
|
+ else {
|
|
+ unshift(@{$o->{ILSM}{MAKEFILE}{TYPEMAPS}}, $ENV{'_INLINE_C_SYSTEM_TYPEMAP_'});
|
|
+ }
|
|
|
|
if (not $o->UNTAINT) {
|
|
require FindBin;
|