On Feb 6, 2012, at 3:26 PM, Jeff King wrote: > On Mon, Feb 06, 2012 at 02:38:20PM -0500, Nicholas Harteau wrote: > >>> perl/Makefile installs Git.pm into $prefix/lib when ExtUtils::MakeMaker >>> is not present. perl can't "use Git;" in that scenario, as $prefix/lib >>> isn't in perl's include path. >>> >>> This patch installs Git.pm into perl's 'installsitelib', generally >>> $prefix/lib/perl5/site_perl, so that even when ExtUtils::MakeMaker isn't >>> present, Git.pm gets installed in a location where 'use Git;' just >>> works. >> [...] >>> ifdef NO_PERL_MAKEMAKER >>> -instdir_SQ = $(subst ','\'',$(prefix)/lib) >>> +instdir_SQ = $(subst ','\'',$(subst installsitelib=,'',$(shell $(PERL_PATH_SQ) -V:installsitelib))) > > Isn't this a regression if I am a non-root user installing into > $HOME/local or similar? With MakeMaker, I end up with this in my > perl.mak: > > PREFIX = /home/peff/local > ... > SITEPREFIX = $(PREFIX) > ... > INSTALLSITELIB = $(SITEPREFIX)/share/perl/5.14.2 > > which works great. Before your patch, without MakeMaker, git would > install into /home/peff/local/lib, which is also OK. But with your > patch, it will try: > > $ perl -V:installsitelib > installsitelib='/usr/local/share/perl/5.14.2'; > > which is not writable by me, and the install will fail. > > I know it's more convenient for some uses, because we know that > installsitelib will be in perl's @INC. But git has always installed out > of the box for non-root users, and I don't think we want to change that. Totally correct - let me re-think the non-root case. Thanks. -- Nicholas Harteau nrh@xxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html