[OE-core] [PATCH 4/5] autotools.bbclass: remove intltool.m4 from ${S}

Ross Burton ross.burton at intel.com
Fri Aug 5 15:17:10 UTC 2016


We need to ensure that builds use our intltool.m4 as there is a bug in
upstream's macros when the host doesn't have XML::Parser installed.

So generalise the m4 pruning logic that we already have from gettext and add
intltool.m4.

Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/classes/autotools.bbclass | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index 22359d3..076899c 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -238,6 +238,9 @@ autotools_do_configure() {
 	# for a package whose autotools are old, on an x86_64 machine, which the old
 	# config.sub does not support.  Work around this by installing them manually
 	# regardless.
+
+	PRUNE_M4=""
+
 	for ac in `find ${S} -ignore_readdir_race -name configure.in -o -name configure.ac`; do
 		rm -f `dirname $ac`/configure
 	done
@@ -287,18 +290,22 @@ autotools_do_configure() {
 					cp ${STAGING_DATADIR_NATIVE}/gettext/po/remove-potcdate.sin ${S}/po/
 				fi
 			fi
-			for i in gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4; do
-				find ${S} -ignore_readdir_race -name $i -delete
-			done
+			PRUNE_M4="$PRUNE_M4 gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4"
 		fi
 		mkdir -p m4
 		if grep "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
 			if ! echo "${DEPENDS}" | grep -q intltool-native; then
 				bbwarn "Missing DEPENDS on intltool-native"
 			fi
+			PRUNE_M4="$PRUNE_M4 intltool.m4"
 			bbnote Executing intltoolize --copy --force --automake
 			intltoolize --copy --force --automake
 		fi
+
+		for i in $PRUNE_M4; do
+			find ${S} -ignore_readdir_race -name $i -delete
+		done
+
 		bbnote Executing ACLOCAL=\"$ACLOCAL\" autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
 		ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || die "autoreconf execution failed."
 		cd $olddir
-- 
2.8.1




More information about the Openembedded-core mailing list