[oe] [PATCH 1/4] autotools: cleanup

Chris Larson kergoth at gmail.com
Tue Feb 8 16:16:39 UTC 2011


From: Chris Larson <chris_larson at mentor.com>

Signed-off-by: Chris Larson <chris_larson at mentor.com>
---
 classes/autotools.bbclass |   60 +++++++++++++++++---------------------------
 1 files changed, 23 insertions(+), 37 deletions(-)

diff --git a/classes/autotools.bbclass b/classes/autotools.bbclass
index c8cb0e9..4d7a66b 100644
--- a/classes/autotools.bbclass
+++ b/classes/autotools.bbclass
@@ -17,7 +17,7 @@ def autotools_deps(d):
 		if (not oe.utils.inherits(d, 'native', 'nativesdk', 'cross',
 		                          'sdk') and
 		    not d.getVar('INHIBIT_DEFAULT_DEPS', True)):
-                    deps += 'libtool-cross '
+			deps += 'libtool-cross '
 
 	return deps + 'gnu-config-native '
 
@@ -110,22 +110,13 @@ oe_runconf () {
 
 autotools_do_configure() {
 	case ${PN} in
-	autoconf*)
-	;;
-	automake*)
+	autoconf*|automake*)
 	;;
 	*)
-		# WARNING: gross hack follows:
-		# An autotools built package generally needs these scripts, however only
-		# automake or libtoolize actually install the current versions of them.
-		# This is a problem in builds that do not use libtool or automake, in the case
-		# where we -need- the latest version of these scripts.  e.g. running a build
-		# 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.
-		( for ac in `find ${S} -name configure.in -o -name configure.ac`; do
-			rm -f `dirname $ac`/configure
-			done )
+		find ${S} -name configure.in -o -name configure.ac | \
+			while read fn; do
+				rm -f `dirname $fn`/configure
+			done
 		if [ -e ${S}/configure.in -o -e ${S}/configure.ac ]; then
 			olddir=`pwd`
 			cd ${S}
@@ -138,9 +129,7 @@ autotools_do_configure() {
 			else
 				acpaths="${acpaths}"
 			fi
-			AUTOV=`automake --version |head -n 1 |sed "s/.* //;s/\.[0-9]\+$//"`
-			automake --version
-			echo "AUTOV is $AUTOV"
+			AUTOV=`automake --version | head -n 1 | sed "s/.* //;s/\.[0-9]\+$//"`
 			install -d ${STAGING_DATADIR}/aclocal
 			install -d ${STAGING_DATADIR}/aclocal-$AUTOV
 			acpaths="$acpaths -I${STAGING_DATADIR}/aclocal-$AUTOV -I ${STAGING_DATADIR}/aclocal"
@@ -151,34 +140,31 @@ autotools_do_configure() {
 				rm -f aclocal.m4
 			fi
 			if [ -e configure.in ]; then
-			  CONFIGURE_AC=configure.in
+				CONFIGURE_AC=configure.in
 			else
-			  CONFIGURE_AC=configure.ac
+				CONFIGURE_AC=configure.ac
 			fi
-			if grep -q "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC; then
-			  if grep -q "sed.*POTFILES" $CONFIGURE_AC; then
-			    : do nothing -- we still have an old unmodified configure.ac
-			  else
-			    oenote Executing glib-gettextize --force --copy
-			    echo "no" | glib-gettextize --force --copy
-			  fi
-			else if grep -q "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC; then
-			  if [ -e ${STAGING_DATADIR}/gettext/config.rpath ]; then
-			    cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
-			  else
-			    oenote ${STAGING_DATADIR}/gettext/config.rpath not found. gettext is not installed.
-			  fi
+			if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+				if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
+					: do nothing -- we still have an old unmodified configure.ac
+				else
+					echo "no" | glib-gettextize --force --copy
+				fi
+			else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+				if [ -e ${STAGING_DATADIR}/gettext/config.rpath ]; then
+					cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
+				else
+					oenote ${STAGING_DATADIR}/gettext/config.rpath not found. gettext is not installed.
+				fi
 			fi
 
 			fi
 			for aux in m4 `sed -n -e '/^[[:space:]]*AC_CONFIG_MACRO_DIR/s|[^(]*([[]*\([^])]*\)[]]*)|\1|p' $CONFIGURE_AC`; do
 				mkdir -p ${aux}
 			done
-			oenote Executing autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
 			autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || oefatal "autoreconf execution failed."
-			if grep -q "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC; then
-			  oenote Executing intltoolize --copy --force --automake
-			  intltoolize --copy --force --automake
+			if grep "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
+				intltoolize --copy --force --automake
 			fi
 			cd $olddir
 		fi
-- 
1.7.2.3





More information about the Openembedded-devel mailing list