`bootstrap' fails with local gnulib dir

Werner LEMBERG <[email protected]>
Newsgroups gmane.comp.gnu.m4.bugs
Message-ID <[email protected]>
[git commit d69fa5284851b2b7aac25ffac638b6b379994db5]

Calling

  ./bootstrap --skip-git --gnulib-srcdir=/home/wl/git/gnulib

fails with

  bootstrap:   error: Can't find, copy or download 'build-aux/git-version-gen', a required
  bootstrap:          gnulib supplied file, please provide the location of a
  bootstrap:          complete 'gnulib' tree by setting 'gnulib_path' in your
  bootstrap:          'bootstrap.conf' or with the '--gnulib-srcdir' option -
  bootstrap:          or else specify the location of your 'git' binary by
  bootstrap:          setting 'GIT' in the environment so that a fresh
  bootstrap:          'gnulib' submodule can be cloned.

Reason: Due to

  gnulib_path=build-aux/gnulib

in file `bootstrap.conf' the function
`func_require_dotgitmodules_parameters' never checks
`$opt_gnulib_srcdir'.

Attached is an ad-hoc fix that worked for me.


    Werner
bootstrap-local-gnulib.diff (text/x-patch, 618 B)
diff --git a/bootstrap b/bootstrap
index 8984cfd9..f12278fb 100755
--- a/bootstrap
+++ b/bootstrap
@@ -3837,9 +3837,9 @@ func_require_dotgitmodules_parameters ()
       # If we can't find git (or if the user specified '--skip-git'),
       # then use an existing gnulib directory specified with
       # '--gnulib-srcdir' if possible.
-      test -n "$gnulib_path" \
-          || test ! -x "$opt_gnulib_srcdir/gnulib-tool" \
-          || gnulib_path=$opt_gnulib_srcdir
+      test -n "$opt_gnulib_srcdir" \
+        && test -x "$opt_gnulib_srcdir/gnulib-tool" \
+        && gnulib_path=$opt_gnulib_srcdir
     }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.