Update git.mk to the version from Pango which has parallel make fixes.
http://git.gnome.org/browse/pango/log/git.mk
commit 6118d5891fee776a087855c335a73c79fdaf036c

RP 16/3/10

Index: git/git.mk
===================================================================
--- git.orig/git.mk	2010-02-05 14:57:15.000000000 +0000
+++ git/git.mk	2010-03-16 11:30:23.000000000 +0000
@@ -82,97 +82,106 @@
 ### .gitignore generation
 
 $(srcdir)/.gitignore: Makefile.am $(top_srcdir)/git.mk
-	@echo Generating $@; \
-	GTKDOCGITIGNOREFILES=; \
-	test "x$(DOC_MODULE)" = x -o "x$(DOC_MAIN_SGML_FILE)" = x || \
-	GTKDOCGITIGNOREFILES=" \
-		$(DOC_MODULE)-decl-list.txt \
-		$(DOC_MODULE)-decl.txt \
-		tmpl/$(DOC_MODULE)-unused.sgml \
-		tmpl/*.bak \
-		xml html \
-		"; \
-	GNOMEDOCUTILSGITIGNOREFILES=; \
-	test "x$(DOC_MODULE)" = x -o "x$(DOC_LINGUAS)" = x || \
-	GNOMEDOCUTILSGITIGNOREFILES=" \
-		$(_DOC_C_DOCS) \
-		$(_DOC_LC_DOCS) \
-		$(_DOC_OMF_ALL) \
-		$(_DOC_DSK_ALL) \
-		$(_DOC_HTML_ALL) \
-		$(_DOC_POFILES) \
-		*/.xml2po.mo \
-		*/*.omf.out \
-		"; \
-	INTLTOOLGITIGNOREFILES=; test -f $(srcdir)/po/Makefile.in.in && \
-	INTLTOOLGITIGNOREFILES=" \
-		po/Makefile.in.in \
-		po/Makefile.in \
-		po/Makefile \
-		po/*.gmo \
-		po/*.mo \
-		po/POTFILES \
-		po/stamp-it \
-		po/.intltool-merge-cache \
-		intltool-extract.in \
-		intltool-merge.in \
-		intltool-update.in \
-		"; \
-	AUTOCONFGITIGNOREFILES=; test -f $(srcdir)/configure && \
-	AUTOCONFGITIGNOREFILES=" \
-		autom4te.cache \
-		configure \
-		config.h \
-		stamp-h1 \
-		libtool \
-		config.lt \
-		"; \
-	for x in \
-		.gitignore \
-		$$GTKDOCGITIGNOREFILES \
-		$$GNOMEDOCUTILSGITIGNOREFILES \
-		$$INTLTOOLGITIGNOREFILES \
-		$$AUTOCONFGITIGNOREFILES \
-		$(GITIGNOREFILES) \
-		$(CLEANFILES) \
-		$(PROGRAMS) \
-		$(EXTRA_PROGRAMS) \
-		$(LTLIBRARIES) \
-		so_locations \
-		.libs _libs \
-		$(MOSTLYCLEANFILES) \
-		"*.$(OBJEXT)" \
-		"*.lo" \
-		$(DISTCLEANFILES) \
-		$(am__CONFIG_DISTCLEAN_FILES) \
-		$(CONFIG_CLEAN_FILES) \
-		TAGS ID GTAGS GRTAGS GSYMS GPATH tags \
-		"*.tab.c" \
-		$(MAINTAINERCLEANFILES) \
-		$(BUILT_SOURCES) \
-		$(DEPDIR) \
-		Makefile \
-		Makefile.in \
-		"*.orig" \
-		"*.rej" \
-		"*.bak" \
-		"*~" \
-		".*.sw[nop]" \
-	; do echo /$$x; done | \
+	$(AM_V_GEN) \
+	{ \
+		if test "x$(DOC_MODULE)" = x -o "x$(DOC_MAIN_SGML_FILE)" = x; then :; else \
+			for x in \
+				$(DOC_MODULE)-decl-list.txt \
+				$(DOC_MODULE)-decl.txt \
+				tmpl/$(DOC_MODULE)-unused.sgml \
+				"tmpl/*.bak" \
+				xml html \
+			; do echo /$$x; done; \
+		fi; \
+		if test "x$(DOC_MODULE)" = x -o "x$(DOC_LINGUAS)" = x; then :; else \
+			for x in \
+				$(_DOC_C_DOCS) \
+				$(_DOC_LC_DOCS) \
+				$(_DOC_OMF_ALL) \
+				$(_DOC_DSK_ALL) \
+				$(_DOC_HTML_ALL) \
+				$(_DOC_POFILES) \
+				"*/.xml2po.mo" \
+				"*/*.omf.out" \
+			; do echo /$$x; done; \
+		fi; \
+		if test -f $(srcdir)/po/Makefile.in.in; then \
+			for x in \
+				po/Makefile.in.in \
+				po/Makefile.in \
+				po/Makefile \
+				po/POTFILES \
+				po/stamp-it \
+				po/.intltool-merge-cache \
+				"po/*.gmo" \
+				"po/*.mo" \
+				po/$(GETTEXT_PACKAGE).pot \
+				intltool-extract.in \
+				intltool-merge.in \
+				intltool-update.in \
+			; do echo /$$x; done; \
+		fi; \
+		if test -f $(srcdir)/configure; then \
+			for x in \
+				autom4te.cache \
+				configure \
+				config.h \
+				stamp-h1 \
+				libtool \
+				config.lt \
+			; do echo /$$x; done; \
+		fi; \
+		for x in \
+			.gitignore \
+			$(GITIGNOREFILES) \
+			$(CLEANFILES) \
+			$(PROGRAMS) \
+			$(check_PROGRAMS) \
+			$(EXTRA_PROGRAMS) \
+			$(LTLIBRARIES) \
+			so_locations \
+			.libs _libs \
+			$(MOSTLYCLEANFILES) \
+			"*.$(OBJEXT)" \
+			"*.lo" \
+			$(DISTCLEANFILES) \
+			$(am__CONFIG_DISTCLEAN_FILES) \
+			$(CONFIG_CLEAN_FILES) \
+			TAGS ID GTAGS GRTAGS GSYMS GPATH tags \
+			"*.tab.c" \
+			$(MAINTAINERCLEANFILES) \
+			$(BUILT_SOURCES) \
+			$(DEPDIR) \
+			Makefile \
+			Makefile.in \
+			"*.orig" \
+			"*.rej" \
+			"*.bak" \
+			"*~" \
+			".*.sw[nop]" \
+		; do echo /$$x; done; \
+	} | \
 	sed "s@^/`echo "$(srcdir)" | sed 's/\(.\)/[\1]/g'`/@/@" | \
 	sed 's@/[.]/@/@g' | \
-	LANG=C sort | uniq > $@.tmp && \
+	LC_ALL=C sort | uniq > $@.tmp && \
 	mv $@.tmp $@;
 
-all: $(srcdir)/.gitignore gitignore-recurse
-gitignore-recurse:
+all: $(srcdir)/.gitignore gitignore-recurse-maybe
+gitignore-recurse-maybe:
 	@if test "x$(SUBDIRS)" = "x$(DIST_SUBDIRS)"; then :; else \
-		list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-		  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) .gitignore); \
-		done; \
+		$(MAKE) $(AM_MAKEFLAGS) gitignore-recurse; \
 	fi;
+gitignore-recurse:
+	@for subdir in $(DIST_SUBDIRS); do \
+	  case " $(SUBDIRS) " in \
+	    *" $$subdir "*) :;; \
+	    *) test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) .gitignore gitignore-recurse || echo "Skipping $$subdir");; \
+	  esac; \
+	done
+gitignore: $(srcdir)/.gitignore gitignore-recurse
+
 maintainer-clean: gitignore-clean
 gitignore-clean:
 	-rm -f $(srcdir)/.gitignore
-.PHONY: gitignore-clean gitignore-recurse
 
+.PHONY: gitignore-clean gitignore gitignore-recurse gitignore-recurse-maybe
