[oe] [PATCH][v2 08/18] autotools-bootstrap.bbclass: initial add

Andreas Müller schnitzeltony at googlemail.com
Wed Nov 4 23:43:50 UTC 2015


bootstrap is another magic script which is intended run before autotools. The
class created runs this script at the right time and ensures that sources of
gnulib are not cloned during configure.

Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
---
 meta-oe/classes/autotools-bootstrap.bbclass | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 meta-oe/classes/autotools-bootstrap.bbclass

diff --git a/meta-oe/classes/autotools-bootstrap.bbclass b/meta-oe/classes/autotools-bootstrap.bbclass
new file mode 100644
index 0000000..8d7af1b
--- /dev/null
+++ b/meta-oe/classes/autotools-bootstrap.bbclass
@@ -0,0 +1,24 @@
+# Class to inherit when you want to build with autotools after running bootstrap
+inherit autotools
+
+DEPENDS += "gnulib"
+
+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
+    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
+    cd $currdir
+}
-- 
2.1.0




More information about the Openembedded-devel mailing list