Ævar Arnfjörð Bjarmason | 5e9637c | 2011-11-18 00:14:42 +0100 | [diff] [blame] | 1 | use strict; |
| 2 | use warnings; |
Petr Baudis | b1edc53 | 2006-06-24 04:34:29 +0200 | [diff] [blame] | 3 | use ExtUtils::MakeMaker; |
Ævar Arnfjörð Bjarmason | 5e9637c | 2011-11-18 00:14:42 +0100 | [diff] [blame] | 4 | use Getopt::Long; |
| 5 | |
| 6 | # Sanity: die at first unknown option |
| 7 | Getopt::Long::Configure qw/ pass_through /; |
| 8 | |
| 9 | GetOptions("localedir=s" => \my $localedir); |
Petr Baudis | b1edc53 | 2006-06-24 04:34:29 +0200 | [diff] [blame] | 10 | |
| 11 | sub MY::postamble { |
| 12 | return <<'MAKE_FRAG'; |
| 13 | instlibdir: |
Petr Baudis | 18b0fc1 | 2006-09-23 20:20:47 +0200 | [diff] [blame] | 14 | @echo '$(INSTALLSITELIB)' |
Petr Baudis | e2a3871 | 2006-07-02 01:48:32 +0200 | [diff] [blame] | 15 | |
Brandon Casey | efe47f8 | 2009-09-24 13:21:03 -0500 | [diff] [blame] | 16 | ifneq (,$(DESTDIR)) |
| 17 | ifeq (0,$(shell expr '$(MM_VERSION)' '>' 6.10)) |
| 18 | $(error ExtUtils::MakeMaker version "$(MM_VERSION)" is older than 6.11 and so \ |
| 19 | is likely incompatible with the DESTDIR mechanism. Try setting \ |
| 20 | NO_PERL_MAKEMAKER=1 instead) |
| 21 | endif |
| 22 | endif |
| 23 | |
Petr Baudis | b1edc53 | 2006-06-24 04:34:29 +0200 | [diff] [blame] | 24 | MAKE_FRAG |
| 25 | } |
| 26 | |
Jonathan Nieder | d22e567 | 2012-06-15 13:14:46 -0500 | [diff] [blame] | 27 | # XXX. When editing this list: |
| 28 | # |
| 29 | # * Please update perl/Makefile, too. |
| 30 | # * Don't forget to test with NO_PERL_MAKEMAKER=YesPlease |
Ævar Arnfjörð Bjarmason | 5e9637c | 2011-11-18 00:14:42 +0100 | [diff] [blame] | 31 | my %pm = ( |
| 32 | 'Git.pm' => '$(INST_LIBDIR)/Git.pm', |
| 33 | 'Git/I18N.pm' => '$(INST_LIBDIR)/Git/I18N.pm', |
Jonathan Nieder | 68f532f | 2012-06-09 17:35:35 -0500 | [diff] [blame] | 34 | 'Git/SVN/Memoize/YAML.pm' => '$(INST_LIBDIR)/Git/SVN/Memoize/YAML.pm', |
Jonathan Nieder | a618032 | 2012-05-28 02:03:58 -0500 | [diff] [blame] | 35 | 'Git/SVN/Fetcher.pm' => '$(INST_LIBDIR)/Git/SVN/Fetcher.pm', |
Jonathan Nieder | 8f9facf | 2012-06-09 17:25:56 -0500 | [diff] [blame] | 36 | 'Git/SVN/Editor.pm' => '$(INST_LIBDIR)/Git/SVN/Editor.pm', |
Jonathan Nieder | c102f4c | 2012-05-27 19:39:01 -0500 | [diff] [blame] | 37 | 'Git/SVN/Prompt.pm' => '$(INST_LIBDIR)/Git/SVN/Prompt.pm', |
Jonathan Nieder | 9f7ad14 | 2012-06-09 17:28:10 -0500 | [diff] [blame] | 38 | 'Git/SVN/Ra.pm' => '$(INST_LIBDIR)/Git/SVN/Ra.pm', |
Ævar Arnfjörð Bjarmason | 5e9637c | 2011-11-18 00:14:42 +0100 | [diff] [blame] | 39 | ); |
Petr Baudis | 5c4082f | 2006-06-24 04:34:40 +0200 | [diff] [blame] | 40 | |
| 41 | # We come with our own bundled Error.pm. It's not in the set of default |
| 42 | # Perl modules so install it if it's not available on the system yet. |
Pavel Roskin | 1d8c9dc | 2006-06-30 01:09:23 -0400 | [diff] [blame] | 43 | eval { require Error }; |
Eric Wong | 4a40cbd | 2007-04-21 00:55:00 -0700 | [diff] [blame] | 44 | if ($@ || $Error::VERSION < 0.15009) { |
Pavel Roskin | 1d8c9dc | 2006-06-30 01:09:23 -0400 | [diff] [blame] | 45 | $pm{'private-Error.pm'} = '$(INST_LIBDIR)/Error.pm'; |
Petr Baudis | 5c4082f | 2006-06-24 04:34:40 +0200 | [diff] [blame] | 46 | } |
| 47 | |
Johannes Schindelin | 8bef620 | 2007-01-16 22:10:54 +0100 | [diff] [blame] | 48 | # redirect stdout, otherwise the message "Writing perl.mak for Git" |
| 49 | # disrupts the output for the target 'instlibdir' |
| 50 | open STDOUT, ">&STDERR"; |
| 51 | |
Petr Baudis | b1edc53 | 2006-06-24 04:34:29 +0200 | [diff] [blame] | 52 | WriteMakefile( |
| 53 | NAME => 'Git', |
| 54 | VERSION_FROM => 'Git.pm', |
Petr Baudis | 5c4082f | 2006-06-24 04:34:40 +0200 | [diff] [blame] | 55 | PM => \%pm, |
Ævar Arnfjörð Bjarmason | 5e9637c | 2011-11-18 00:14:42 +0100 | [diff] [blame] | 56 | PM_FILTER => qq[\$(PERL) -pe "s<\\Q++LOCALEDIR++\\E><$localedir>"], |
Junio C Hamano | 2cdf87e | 2006-12-08 14:07:45 -0800 | [diff] [blame] | 57 | MAKEFILE => 'perl.mak', |
Gerrit Pape | 28072a5 | 2007-12-10 09:31:02 +0000 | [diff] [blame] | 58 | INSTALLSITEMAN3DIR => '$(SITEPREFIX)/share/man/man3' |
Petr Baudis | b1edc53 | 2006-06-24 04:34:29 +0200 | [diff] [blame] | 59 | ); |