more portable absolute dir check in Git.pm
PATCH 1/1 more portable absolute dir check in Git.pm
I was trying to get msysGit to work with activeperl. I'm not sure how far I got, I will revisit this problem in the future, but here is a patch.
It removes a problematic make fragment that doesn't work on nmake (and probably dmake as well.) As well as a better absolute dir check in Git.pm .
Quoted 1 line
From
49f6d63f760d8b0b6988ce8cf4ed175965c3bf4bMon Sep 17 00:00:00 2001
From: Rafael Kitover <[email protected]>
Date: Sat, 5 Feb 2011 11:13:31 -0500
Subject: [PATCH] more portable absolute dir check in Git.pm
--- perl/Git.pm | 4 +++- perl/Makefile.PL | 7 ++++++- 2 files changed, 9 insertions(+), 2 deletions(-)
perl/Git.pm +3 -1
@@ -101,6 +101,7 @@ use Error qw(:try); use Cwd qw(abs_path); use IPC::Open2 qw(open2); use Fcntl qw(SEEK_SET SEEK_CUR); +use File::Spec (); }
@@ -184,7 +185,8 @@ sub repository { }; if ($dir) { - $dir =~ m#^/# or $dir = $opts{Directory} . '/' . $dir; + File::Spec->file_name_is_absolute($dir) + or $dir = $opts{Directory} . '/' . $dir; $opts{Repository} = abs_path($dir); # If --git-dir went ok, this shouldn't die either.
perl/Makefile.PL +6 -1
@@ -1,10 +1,13 @@ use ExtUtils::MakeMaker; sub MY::postamble { - return <<'MAKE_FRAG'; + my $make_frag = <<'MAKE_FRAG'; instlibdir: @echo '$(INSTALLSITELIB)' +MAKE_FRAG + + $make_frag .= <<'MAKE_FRAG' if $^O ne 'MSWin32'; ifneq (,$(DESTDIR)) ifeq (0,$(shell expr '$(MM_VERSION)' '>' 6.10)) $(error ExtUtils::MakeMaker version "$(MM_VERSION)" is older than 6.11 and so \
@@ -14,6 +17,8 @@ endif endif MAKE_FRAG + + return $make_frag; } my %pm = ('Git.pm' => '$(INST_LIBDIR)/Git.pm');
Signature · 1 line
1.7.3.1
Quoted 6 lines · Rafael Kitover
I was trying to get msysGit to work with activeperl. I'm not sure how far I got, I will revisit this problem in the future, but here is a patch.
It removes a problematic make fragment that doesn't work on nmake (and probably dmake as well.) As well as a better absolute dir check in Git.pm .
Please read Documentation/SubmittingPatches. In particlar:
- We use inline patches on the mailing-list. git send-email can send these for you.
- Your patch lacks a sign-off.
Other than that, interesting. But I think the make_frag-changes needs an explanation.