From 676fdf8cb5d7a4d13d5bfc009e3c7958aa783072 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Tue, 8 Nov 2011 17:06:27 -0700 Subject: build: allow for local gnulib diffs Commit f7bd00c12 pulled in a gnulib module that fails to compile on mingw. While it would be nice to pull in a newer version of .gnulib that fixes this, it is difficult to backport any .gnulib update to older releases. So, it makes sense to take advantage of gnulib-tool's ability to support local diffs, where we can apply specific diffs in our use of gnulib without waiting for upstream gnulib to pick up those changes, as well as avoiding a wholesale .gnulib update. The existence of local diffs will also make it easier to backport fixes against a tarball (as long as a tarball and libvirt.git share the same .gnulib commit, then the tarball can be patched by applying the same local diffs as a post-release libvirt.git commit, without having to rerun an entire gnulib-tool bootstrap). This patch introduces the framework for supporting local diffs, without actually introducing any. * bootstrap.conf (local_gl_dir): New variable. * autogen.sh (bootstrap_hash): Hash any local diffs, to force a re-bootstrap if just diffs change. * cfg.mk (_update_required): Likewise. --- autogen.sh | 3 +++ 1 file changed, 3 insertions(+) (limited to 'autogen.sh') diff --git a/autogen.sh b/autogen.sh index b64521e5e..f1591d8e1 100755 --- a/autogen.sh +++ b/autogen.sh @@ -41,10 +41,13 @@ fi # is required. The first is just the SHA1 that selects a gnulib snapshot. # The second ensures that whenever we change the set of gnulib modules used # by this package, we rerun bootstrap to pull in the matching set of files. +# The third ensures that whenever we change the set of local gnulib diffs, +# we rerun bootstrap to pull in those diffs. bootstrap_hash() { git submodule status | sed 's/^[ +-]//;s/ .*//' git hash-object bootstrap.conf + git ls-tree -d HEAD gnulib/local | awk '{print $3}' } # Ensure that whenever we pull in a gnulib update or otherwise change to a -- cgit v1.2.3-65-gdbad