Merge branch 'maint'
[gitweb.git] / perl / Makefile.PL
index dd6105677bad019fd0c679256a532ae3f293e5e3..9b117fd0d736615a8c4aeda742384956373d295a 100644 (file)
@@ -3,19 +3,31 @@ use ExtUtils::MakeMaker;
 sub MY::postamble {
        return <<'MAKE_FRAG';
 instlibdir:
-       @echo $(INSTALLSITELIB)
+       @echo '$(INSTALLSITELIB)'
 
 MAKE_FRAG
 }
 
+my %pm = ('Git.pm' => '$(INST_LIBDIR)/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.
+eval { require Error };
+if ($@) {
+       $pm{'private-Error.pm'} = '$(INST_LIBDIR)/Error.pm';
+}
+
+my %extra;
+$extra{DESTDIR} = $ENV{DESTDIR} if $ENV{DESTDIR};
+
+# redirect stdout, otherwise the message "Writing perl.mak for Git"
+# disrupts the output for the target 'instlibdir'
+open STDOUT, ">&STDERR";
+
 WriteMakefile(
        NAME            => 'Git',
        VERSION_FROM    => 'Git.pm',
-       MYEXTLIB        => '../libgit.a',
-       INC             => '-I. -I..',
+       PM              => \%pm,
+       MAKEFILE        => 'perl.mak',
+       %extra
 );
-
-
-use Devel::PPPort;
-
--s 'ppport.h' or Devel::PPPort::WriteFile();