[oe] [PATCH] autotools-bootstrap: don't fake submodule to avoid gnulib download

Paul Gortmaker paul.gortmaker at windriver.com
Thu Mar 31 19:38:02 UTC 2016


We were creating a .gitmodules on the fly to avoid downloading the
gnulib via git.  However this is problematic if the pkg had its own
.gitmodules already -- we'd clobber it and this breaks netcf build:

   ./bootstrap: getting gnulib files...
   error: pathspec 'gnulib' did not match any file(s) known to git.

There is a more proper way to do this:  bootstrap supports this:

 --no-git           do not use git to update gnulib.  Requires that
                    --gnulib-srcdir point to a correct gnulib snapshot

and if we use that, we can use our sysroot copy of gnulib without
having to fake a .gitmodules submodule file.  This keeps the build
of netcf happy.

Signed-off-by: Paul Gortmaker <paul.gortmaker at windriver.com>

diff --git a/meta-oe/classes/autotools-bootstrap.bbclass b/meta-oe/classes/autotools-bootstrap.bbclass
index 8d7af1b47222..cae037559aa4 100644
--- a/meta-oe/classes/autotools-bootstrap.bbclass
+++ b/meta-oe/classes/autotools-bootstrap.bbclass
@@ -7,18 +7,13 @@ do_configure_prepend() {
     currdir=`pwd`
     cd ${S}
 
-    # avoid bootstrap cloning gnulib on every configure
-    cat >.gitmodules <<EOF
-[submodule "gnulib"]
-	path = gnulib
-	url = git://git.sv.gnu.org/gnulib
-EOF
+    # avoid bootstrap cloning gnulib on every configure, hence "--no-git".
     cp -rf ${STAGING_DATADIR}/gnulib ${S}
 
     # --force to avoid errors on reconfigure e.g if recipes changed we depend on
     # | bootstrap: running: libtoolize --quiet
     # | libtoolize:   error: 'libltdl/COPYING.LIB' exists: use '--force' to overwrite
     # | ...
-    ./bootstrap --force
+    ./bootstrap --force --no-git --gnulib-srcdir=gnulib
     cd $currdir
 }
-- 
2.7.2




More information about the Openembedded-devel mailing list