diff options
author | Nicholas Clark <nick@ccl4.org> | 2009-09-24 10:11:42 +0100 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2009-09-24 10:11:42 +0100 |
commit | 8a99276313ed95fde25e45e5b89a48e5080ab4cd (patch) | |
tree | 2607c49782d00350638ea511fb49c574ecf469c5 | |
parent | c1effa61278e47c916466883d74905b04fedc388 (diff) | |
download | perl-8a99276313ed95fde25e45e5b89a48e5080ab4cd.tar.gz |
Support building extensions in cpan/ as well as ext/
-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') { |