Make perl/ build procedure ActiveState friendly.
On Cygwin + ActivateState Perl, Makefile generated with MakeMaker is not usable because of line-endings and back-slashes. This teaches perl/Makefile to write a handcrafted equivalent perl.mak file with 'make NO_PERL_MAKEMAKER=NoThanks'. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:

committed by
Junio C Hamano

parent
396db813f2
commit
f848718a69
3
perl/.gitignore
vendored
3
perl/.gitignore
vendored
@ -1,4 +1,5 @@
|
||||
Makefile
|
||||
perl.mak
|
||||
perl.mak.old
|
||||
blib
|
||||
blibdirs
|
||||
pm_to_blib
|
||||
|
39
perl/Makefile
Normal file
39
perl/Makefile
Normal file
@ -0,0 +1,39 @@
|
||||
#
|
||||
# Makefile for perl support modules and routine
|
||||
#
|
||||
makfile:=perl.mak
|
||||
|
||||
PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
|
||||
prefix_SQ = $(subst ','\'',$(prefix))
|
||||
|
||||
all install instlibdir: $(makfile)
|
||||
$(MAKE) -f $(makfile) $@
|
||||
|
||||
clean:
|
||||
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: > $@
|
||||
echo ' :' >> $@
|
||||
echo install: >> $@
|
||||
echo ' mkdir -p $(instdir_SQ)' >> $@
|
||||
echo ' $(RM) $(instdir_SQ)/Git.pm; cp Git.pm $(instdir_SQ)' >> $@
|
||||
echo ' $(RM) $(instdir_SQ)/Error.pm; \
|
||||
cp private-Error.pm $(instdir_SQ)/Error.pm' >> $@
|
||||
echo instlibdir: >> $@
|
||||
echo ' echo $(instdir_SQ)' >> $@
|
||||
else
|
||||
$(makfile): Makefile.PL ../GIT-CFLAGS
|
||||
'$(PERL_PATH_SQ)' $< FIRST_MAKEFILE='$@' 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
|
||||
|
Reference in New Issue
Block a user