Skip to content

Commit

Permalink
The Makefile.PL will now find .pm files itself.
Browse files Browse the repository at this point in the history
It is no longer necessary to manually add new .pm files to the
Makefile.PL.  This makes it easier to add modules.

It is still necessary to add them to the Makefile, but that extra work
should be removed at a future date.

Signed-off-by: Michael G Schwern <schwern@pobox.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
  • Loading branch information
Michael G. Schwern authored and Eric Wong committed Jul 27, 2012
1 parent 0ed8fdc commit 98d5439
Showing 1 changed file with 16 additions and 13 deletions.
29 changes: 16 additions & 13 deletions perl/Makefile.PL
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@ use strict;
use warnings;
use ExtUtils::MakeMaker;
use Getopt::Long;
use File::Find;

# Don't forget to update the perl/Makefile, too.
# Don't forget to test with NO_PERL_MAKEMAKER=YesPlease

# Sanity: die at first unknown option
Getopt::Long::Configure qw/ pass_through /;
Expand All @@ -25,19 +29,18 @@ endif
MAKE_FRAG
}

# XXX. When editing this list:
#
# * Please update perl/Makefile, too.
# * Don't forget to test with NO_PERL_MAKEMAKER=YesPlease
my %pm = (
'Git.pm' => '$(INST_LIBDIR)/Git.pm',
'Git/I18N.pm' => '$(INST_LIBDIR)/Git/I18N.pm',
'Git/SVN/Memoize/YAML.pm' => '$(INST_LIBDIR)/Git/SVN/Memoize/YAML.pm',
'Git/SVN/Fetcher.pm' => '$(INST_LIBDIR)/Git/SVN/Fetcher.pm',
'Git/SVN/Editor.pm' => '$(INST_LIBDIR)/Git/SVN/Editor.pm',
'Git/SVN/Prompt.pm' => '$(INST_LIBDIR)/Git/SVN/Prompt.pm',
'Git/SVN/Ra.pm' => '$(INST_LIBDIR)/Git/SVN/Ra.pm',
);
# Find all the .pm files in "Git/" and Git.pm
my %pm;
find sub {
return unless /\.pm$/;

# sometimes File::Find prepends a ./ Strip it.
my $pm_path = $File::Find::name;
$pm_path =~ s{^\./}{};

$pm{$pm_path} = '$(INST_LIBDIR)/'.$pm_path;
}, "Git", "Git.pm";


# We come with our own bundled Error.pm. It's not in the set of default
# Perl modules so install it if it's not available on the system yet.
Expand Down

0 comments on commit 98d5439

Please sign in to comment.