3696c4ce89
Building with prefix=/some/where and temporarily installing it to elsewhere for tar'ing up is done with: make prefix=/some/where make prefix=/some/where DESTDIR=/else/where install Make handcrafted perl/perl.mak without NO_PERL_MAKEMAKER honour DESTDIR. Ancient ExtUtils::MakeMaker (pre 6.11?) has the same issue, but recent versions of Perl ships with at leat 6.17; this patch does not address that issue. Signed-off-by: Junio C Hamano <gitster@pobox.com>
48 lines
1.4 KiB
Makefile
48 lines
1.4 KiB
Makefile
#
|
|
# Makefile for perl support modules and routine
|
|
#
|
|
makfile:=perl.mak
|
|
|
|
PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
|
|
prefix_SQ = $(subst ','\'',$(prefix))
|
|
|
|
ifndef V
|
|
QUIET = @
|
|
endif
|
|
|
|
all install instlibdir: $(makfile)
|
|
$(QUIET)$(MAKE) -f $(makfile) $@
|
|
|
|
clean:
|
|
$(QUIET)test -f $(makfile) && $(MAKE) -f $(makfile) $@ || exit 0
|
|
$(RM) ppport.h
|
|
$(RM) $(makfile)
|
|
$(RM) $(makfile).old
|
|
|
|
ifdef NO_PERL_MAKEMAKER
|
|
instdir_SQ = $(subst ','\'',$(prefix)/lib)
|
|
$(makfile): ../GIT-CFLAGS Makefile
|
|
echo all: private-Error.pm Git.pm > $@
|
|
echo ' mkdir -p blib/lib' >> $@
|
|
echo ' $(RM) blib/lib/Git.pm; cp Git.pm blib/lib/' >> $@
|
|
echo ' $(RM) blib/lib/Error.pm' >> $@
|
|
'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
|
|
echo ' cp private-Error.pm blib/lib/Error.pm' >> $@
|
|
echo install: >> $@
|
|
echo ' mkdir -p "$$(DESTDIR)$(instdir_SQ)"' >> $@
|
|
echo ' $(RM) "$$(DESTDIR)$(instdir_SQ)/Git.pm"; cp Git.pm "$$(DESTDIR)$(instdir_SQ)"' >> $@
|
|
echo ' $(RM) "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
|
|
'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
|
|
echo ' cp private-Error.pm "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
|
|
echo instlibdir: >> $@
|
|
echo ' echo $(instdir_SQ)' >> $@
|
|
else
|
|
$(makfile): Makefile.PL ../GIT-CFLAGS
|
|
$(PERL_PATH) $< PREFIX='$(prefix_SQ)'
|
|
endif
|
|
|
|
# this is just added comfort for calling make directly in perl dir
|
|
# (even though GIT-CFLAGS aren't used yet. If ever)
|
|
../GIT-CFLAGS:
|
|
$(MAKE) -C .. GIT-CFLAGS
|