aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2012-07-27 20:04:20 +0000
committerEric Wong <normalperson@yhbt.net>2012-07-27 22:14:02 +0000
commitee9be06770223238c6a22430eb874754dd22dfb0 (patch)
treea9a59673c197e260512526bb07a2a451c42c8565
parent98d5439dad36f25aa9a2a70cc140d85d94e99bc9 (diff)
downloadgit-ee9be06770223238c6a22430eb874754dd22dfb0.tar.gz
git-ee9be06770223238c6a22430eb874754dd22dfb0.tar.xz
perl: detect new files in MakeMaker builds
While Makefile.PL now finds .pm files on its own, it does not detect new files after it generates perl/perl.mak. [ew: commit message, minor tweaks] ref: http://mid.gmane.org/7vlii51xz4.fsf@alter.siamese.dyndns.org Signed-off-by: Eric Wong <normalperson@yhbt.net>
-rw-r--r--Makefile7
-rw-r--r--perl/.gitignore1
-rw-r--r--perl/Makefile3
3 files changed, 11 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index b0b349336..e2a4ac724 100644
--- a/Makefile
+++ b/Makefile
@@ -2090,6 +2090,13 @@ $(SCRIPT_LIB) : % : %.sh GIT-SCRIPT-DEFINES
ifndef NO_PERL
$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak
+perl/perl.mak: perl/PM.stamp
+
+perl/PM.stamp: FORCE
+ $(QUIET_GEN)find perl -type f -name '*.pm' | sort >$@+ && \
+ { cmp $@+ $@ >/dev/null 2>/dev/null || mv $@+ $@; } && \
+ $(RM) $@+
+
perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL
$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F)
diff --git a/perl/.gitignore b/perl/.gitignore
index d5c6e22d0..0f1fc27f8 100644
--- a/perl/.gitignore
+++ b/perl/.gitignore
@@ -5,3 +5,4 @@ MYMETA.yml
blib
blibdirs
pm_to_blib
+PM.stamp
diff --git a/perl/Makefile b/perl/Makefile
index 6ca7d472e..7667c903d 100644
--- a/perl/Makefile
+++ b/perl/Makefile
@@ -20,6 +20,9 @@ clean:
$(RM) ppport.h
$(RM) $(makfile)
$(RM) $(makfile).old
+ $(RM) PM.stamp
+
+$(makfile): PM.stamp
ifdef NO_PERL_MAKEMAKER
instdir_SQ = $(subst ','\'',$(prefix)/lib)