]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
maint: relax git minimum version
authorEric Blake <eblake@redhat.com>
Wed, 24 Feb 2010 18:38:44 +0000 (11:38 -0700)
committerChris Lalancette <clalance@redhat.com>
Wed, 24 Feb 2010 19:29:27 +0000 (14:29 -0500)
Requiring git 1.6.4, just for the optional GNULIB_SRCDIR support,
was too harsh.  Resynchronize from gnulib.

* .gnulib: Import from latest gnulib.
* bootstrap: Re-synchronize from .gnulib/build-aux.
* bootstrap.conf: Drop git to 1.5.5.
* README-hacking: Document use of GNULIB_SRCDIR.

.gnulib
README-hacking
bootstrap
bootstrap.conf

diff --git a/.gnulib b/.gnulib
index 11fbc57405a118e6ec9a3ebc19bbf5ececdae4d6..108cfb803174abf17eb101e9999b9d1a642ce1ba 160000 (submodule)
--- a/.gnulib
+++ b/.gnulib
@@ -1 +1 @@
-Subproject commit 11fbc57405a118e6ec9a3ebc19bbf5ececdae4d6
+Subproject commit 108cfb803174abf17eb101e9999b9d1a642ce1ba
index 4105a3ee6a986645bd4fbb16070a4e30bd47546e..80b022ca8a29316c53a7f8edd3ce9a0cf60103be 100644 (file)
@@ -12,8 +12,7 @@ requirements on anyone wishing to build from the just-checked-out sources.
 Note the requirements to build the released archive are much less and
 are just the requirements of the standard ./configure && make procedure.
 Specific development tools and versions will be checked for and listed by
-the bootstrap script.  See README-prereq for specific notes on obtaining
-these prerequisite tools.
+the bootstrap script.
 
 Valgrind <http://valgrind.org/> is also highly recommended, if
 Valgrind supports your architecture. See also README-valgrind.
@@ -28,6 +27,12 @@ You can get a copy of the source repository like this:
         $ git clone git://libvirt.org/libvirt
         $ cd libvirt
 
+As an optional step, if you already have a copy of the gnulib git
+repository on your hard drive, then you can use it as a reference to
+reduce download time and disk space requirements:
+
+        $ export GNULIB_SRCDIR=/path/to/gnulib
+
 The next step is to get all required pieces from gnulib,
 to run autoreconf, and to invoke ./configure:
 
index be96444fdd273d584825a46e3cbaac1b58db0cab..365a3d92eae8aa7d795ca997ca04146c94102bc2 100755 (executable)
--- a/bootstrap
+++ b/bootstrap
@@ -1,4 +1,6 @@
 #! /bin/sh
+# Print a version string.
+scriptversion=2010-02-24.17; # UTC
 
 # Bootstrap this package from checked-out sources.
 
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Written by Paul Eggert.
+# Originally written by Paul Eggert.  The canonical version of this
+# script is maintained as build-aux/bootstrap in gnulib, however, to
+# be useful to your project, you should place a copy of it under
+# version control in the top-level directory of your project.  The
+# intent is that all customization can be done with a bootstrap.conf
+# file also maintained in your version control; gnulib comes with a
+# template build-aux/bootstrap.conf to get you started.
+
+# Please report bugs or propose patches to bug-gnulib@gnu.org.
 
 nl='
 '
@@ -161,7 +171,6 @@ vc_ignore=auto
 # die otherwise.
 find_tool ()
 {
-  # Find sha1sum, named gsha1sum on MacPorts.
   find_tool_envvar=$1
   shift
   find_tool_names=$@
@@ -424,12 +433,28 @@ case ${GNULIB_SRCDIR--} in
   GNULIB_SRCDIR=$gnulib_path
   ;;
 *)
-  # Use GNULIB_SRCDIR as a reference.  Assumes git 1.6.4 or newer.
+  # Use GNULIB_SRCDIR as a reference.
   if test -d "$GNULIB_SRCDIR"/.git && \
         git_modules_config submodule.gnulib.url >/dev/null; then
     echo "$0: getting gnulib files..."
-    git submodule update --init --reference "$GNULIB_SRCDIR" \
+    if git submodule --help|grep reference > /dev/null; then
+      # Prefer the one-liner available in git 1.6.4 or newer.
+      git submodule update --init --reference "$GNULIB_SRCDIR" \
         "$gnulib_path" || exit $?
+    else
+      # This fallback allows at least git 1.5.5.
+      if test -f "$gnulib_path"/gnulib-tool; then
+        # Since file already exists, assume submodule init already complete.
+        git submodule update || exit $?
+      else
+        # Older git can't clone into an empty directory.
+        rmdir "$gnulib_path" 2>/dev/null
+        git clone --reference "$GNULIB_SRCDIR" \
+          "$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \
+          && git submodule init && git submodule update \
+          || exit $?
+      fi
+    fi
     GNULIB_SRCDIR=$gnulib_path
   fi
   ;;
@@ -819,6 +844,10 @@ bootstrap_epilogue
 
 echo "$0: done.  Now you can run './configure'."
 
-# Local Variables:
-# indent-tabs-mode: nil
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
index d315e04b45944aa88adfeb3ab3f7be9cc7bfedc8..58ef2abd04e641e545f8fbd79738e89a3f084138 100644 (file)
@@ -124,7 +124,7 @@ autoconf   2.59
 automake   1.9.6
 autopoint  -
 gettext    -
-git        1.6.4
+git        1.5.5
 gzip       -
 libtool    -
 perl       5.5