diff options
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | doc/Makefile.am | 2 | ||||
-rw-r--r-- | doc/openi18n/Makefile.am | 2 | ||||
-rw-r--r-- | doc/reference/Makefile.am | 2 | ||||
-rw-r--r-- | git.mk | 155 | ||||
-rw-r--r-- | glade/Makefile.am | 4 | ||||
-rw-r--r-- | gnome-pty-helper/Makefile.am | 8 | ||||
-rw-r--r-- | perf/Makefile.am | 2 | ||||
-rw-r--r-- | python/Makefile.am | 2 | ||||
-rw-r--r-- | src/Makefile.am | 2 | ||||
-rw-r--r-- | termcaps/Makefile.am | 2 |
11 files changed, 183 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 05600f3..3216f57 100644 --- a/Makefile.am +++ b/Makefile.am @@ -52,3 +52,5 @@ ChangeLog: dist: ChangeLog .PHONY: ChangeLog + +-include $(top_srcdir)/git.mk diff --git a/doc/Makefile.am b/doc/Makefile.am index 2801754..6f469f0 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -7,3 +7,5 @@ ctlseqs.ps: ctlseqs.ms ctlseqs.txt: ctlseqs.ms tbl $^ | nroff -c -ms > $@ + +-include $(top_srcdir)/git.mk diff --git a/doc/openi18n/Makefile.am b/doc/openi18n/Makefile.am index 9c491a9..3397415 100644 --- a/doc/openi18n/Makefile.am +++ b/doc/openi18n/Makefile.am @@ -3,3 +3,5 @@ EXTRA_DIST = UTF-8.txt wrap.txt LIBS= noinst_PROGRAMS = cursor cursor_SOURCES = cursor.c + +-include $(top_srcdir)/git.mk diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am index b2d07a0..56433bd 100644 --- a/doc/reference/Makefile.am +++ b/doc/reference/Makefile.am @@ -79,3 +79,5 @@ TESTS += check-doc-syntax.sh EXTRA_DIST += check-doc-coverage.sh check-doc-syntax.sh TESTS_ENVIRONMENT = srcdir="$(srcdir)" top_srcdir="$(top_srcdir)" MAKE="$(MAKE) $(AM_MAKEFLAGS)" DOC_MODULE="$(DOC_MODULE)" REPORT_FILES="$(REPORT_FILES)" + +-include $(top_srcdir)/git.mk @@ -0,0 +1,155 @@ +# git.mk +# +# Copyright 2009 Red Hat, Inc. +# Written by Behdad Esfahbod +# +# The canonical source for this file is pango/git.mk, or whereever the +# header of pango/git.mk suggests in the future. +# +# To use in your project, import this file in your git repo's toplevel, +# then do "make -f git.mk". This modifies all Makefile.am files in +# your project to include git.mk. +# +# This enables automatic .gitignore generation. If you need to ignore +# more files, add them to the GITIGNOREFILES variable in your Makefile.am. +# But think twice before doing that. If a file has to be in .gitignore, +# chances are very high that it's a generated file and should be in one +# of MOSTLYCLEANFILES, CLEANFILES, DISTCLEANFILES, or MAINTAINERCLEANFILES. +# +# The only case that you need to manually add a file to GITIGNOREFILES is +# when remove files in one of mostlyclean-local, clean-local, distclean-local, +# or maintainer-clean-local. +# +# Note that for files like editor backup, etc, there are better places to +# ignore them. See "man gitignore". +# +# If "make maintainer-clean" removes the files but they are not recognized +# by this script (that is, if "git stat" shows untracked files still), send +# me the output of "git stat" as well as your Makefile.am and Makefile for +# the directories involved. +# +# For a list of toplevel files that should be in MAINTAINERCLEANFILES, see +# pango/Makefile.am. +# +# Don't EXTRA_DIST this file. It is supposed to only live in git clones, +# not tarballs. It serves no useful purpose in tarballs and clutters the +# build dir. +# +# +# KNOWN ISSUES: +# +# - Recursive configure doesn't work as $(top_srcdir)/git.mk inside the +# submodule doesn't find us. If you have configure.{in,ac} files in +# subdirs, add a proxy git.mk file in those dirs that simply does: +# "include $(top_srcdir)/../git.mk". Add more ..'s to your taste. +# And add those files to git. See vte/gnome-pty-helper/git.mk for +# example. +# + +git-all: git-mk-install + +git-mk-install: + @echo Installing git makefile + @any_failed=; find $(top_srcdir) -name Makefile.am | while read x; do \ + if grep 'include .*/git.mk' $$x >/dev/null; then \ + echo $$x already includes git.mk; \ + else \ + failed=; \ + echo "Updating $$x"; \ + { cat $$x; \ + echo ''; \ + echo '-include $$(top_srcdir)/git.mk'; \ + } > $$x.tmp || failed=1; \ + if test x$$failed = x; then \ + mv $$x.tmp $$x || failed=1; \ + fi; \ + if test x$$failed = x; then : else \ + echo Failed updating $$x; >&2 \ + any_failed=1; \ + fi; \ + fi; done; test -z "$$any_failed" + +.PHONY: git-all git-mk-install + + +### .gitignore generation + +.gitignore: Makefile.am $(top_srcdir)/git.mk + @echo Generating $@; \ + GTKDOCGITIGNOREFILES=; test "x$(DOC_MODULE)" = x || \ + GTKDOCGITIGNOREFILES=" \ + $(DOC_MODULE)-decl-list.txt \ + $(DOC_MODULE)-decl.txt \ + tmpl/$(DOC_MODULE)-unused.sgml \ + tmpl/*.bak \ + xml html \ + "; \ + 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 \ + 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 \ + $$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" \ + "*~" \ + ; do echo /$$x; done | \ + grep -v '/[.][.]/' | \ + sed 's@/[.]/@/@g' | \ + LANG=C sort | uniq > $@.tmp && \ + mv $@.tmp $@; + +all: .gitignore gitignore-recurse +gitignore-recurse: + @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; \ + fi; +maintainer-clean-local: gitignore-clean +gitignore-clean: + rm -f .gitignore +.PHONY: gitignore-clean gitignore-recurse + diff --git a/glade/Makefile.am b/glade/Makefile.am index 2015155..151f985 100644 --- a/glade/Makefile.am +++ b/glade/Makefile.am @@ -40,4 +40,8 @@ install-data-local: install-icons uninstall-local: uninstall-icons +MAINTAINERCLEANFILES = $(catalogue_DATA) + @INTLTOOL_XML_NOMERGE_RULE@ + +-include $(top_srcdir)/git.mk diff --git a/gnome-pty-helper/Makefile.am b/gnome-pty-helper/Makefile.am index 82388c6..bb54503 100644 --- a/gnome-pty-helper/Makefile.am +++ b/gnome-pty-helper/Makefile.am @@ -14,8 +14,16 @@ install-exec-hook: MAINTAINERCLEANFILES = \ $(srcdir)/INSTALL \ $(srcdir)/aclocal.m4 \ + $(srcdir)/config.guess \ $(srcdir)/config.h.in \ + $(srcdir)/config.sub \ $(srcdir)/configure \ + $(srcdir)/depcomp \ + $(srcdir)/install-sh \ + $(srcdir)/mkinstalldirs \ + $(srcdir)/missing \ $(srcdir)/omf.make \ $(srcdir)/xmldocs.make \ `find "$(srcdir)" -type f -name Makefile.in -print` + +-include $(top_srcdir)/git.mk diff --git a/perf/Makefile.am b/perf/Makefile.am index b69f235..5a3bf66 100644 --- a/perf/Makefile.am +++ b/perf/Makefile.am @@ -1,3 +1,5 @@ EXTRA_DIST = \ UTF-8-demo.txt \ vim.sh scroll.vim + +-include $(top_srcdir)/git.mk diff --git a/python/Makefile.am b/python/Makefile.am index ea164f8..92bf3e2 100644 --- a/python/Makefile.am +++ b/python/Makefile.am @@ -38,3 +38,5 @@ vte.c: vte.defs vte.override && rm -f gen-$*.c endif + +-include $(top_srcdir)/git.mk diff --git a/src/Makefile.am b/src/Makefile.am index cc76635..b4a6eaa 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -298,3 +298,5 @@ dumpkeys_SOURCES = dumpkeys.c mev_SOURCES = mev.c ssfe_SOURCES = ssfe.c xticker_SOURCES = xticker.c + +-include $(top_srcdir)/git.mk diff --git a/termcaps/Makefile.am b/termcaps/Makefile.am index fe54682..894bd89 100644 --- a/termcaps/Makefile.am +++ b/termcaps/Makefile.am @@ -4,3 +4,5 @@ termcap_DATA = xterm $(VTE_DEFAULT_EMULATION) $(VTE_DEFAULT_EMULATION): xterm sed -e s,^xterm:,$(VTE_DEFAULT_EMULATION):,g \ -e s,^xterm\|,$(VTE_DEFAULT_EMULATION)\|,g $< > $@ + +-include $(top_srcdir)/git.mk |