diff options
-rw-r--r-- | make_ext.pl | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/make_ext.pl b/make_ext.pl index 61945c466e..0e0bc9bac1 100644 --- a/make_ext.pl +++ b/make_ext.pl @@ -19,6 +19,8 @@ my @toolchain = qw(ext/constant/lib ext/Cwd ext/Cwd/lib ext/ExtUtils-Command/lib ext/ExtUtils-Manifest/lib ext/Text-ParseWords/lib ext/File-Path/lib ext/AutoLoader/lib); +my @ext_dirs = qw(ext cpan); + # This script acts as a simple interface for building extensions. # It's actually a cut and shut of the Unix version ext/utils/makeext and the @@ -232,7 +234,16 @@ foreach my $spec (@extspec) { # New style ext/Data-Dumper/ my $copy = $spec; $copy =~ tr!/!-!; - $ext_pathname = "ext/$copy"; + foreach my $dir (@ext_dirs) { + if (-d "$dir/$copy") { + $ext_pathname = "$dir/$copy"; + last; + } + } + if (!defined $ext_pathname) { + warn "Can't find extension $spec in any of @ext_dirs"; + next; + } } if ($Config{osname} eq 'catamount') { |