From 496b9be8d169b09ae7fae0ea80f67c5f2f2c9acc Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 12 May 2008 13:22:14 +0000 Subject: autotools.bbclass: Revert damage from 4b02add2b83e66d45ff3e840056487a7274d9011, convert autotools_stage_all to use sed on .la files instead of calling oe_libinstall, remove broken enable-mainainer-mode flag --- classes/autotools.bbclass | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) (limited to 'classes') diff --git a/classes/autotools.bbclass b/classes/autotools.bbclass index 010f4ab620..7137876a93 100644 --- a/classes/autotools.bbclass +++ b/classes/autotools.bbclass @@ -58,7 +58,6 @@ oe_runconf () { --oldincludedir=${oldincludedir} \ --infodir=${infodir} \ --mandir=${mandir} \ - --enable-mainainer-mode \ ${EXTRA_OECONF} \ $@" oenote "Running $cfgcmd..." @@ -172,7 +171,7 @@ autotools_stage_dir() { rmdir "$from" 2> /dev/null || true if [ -d "$from" ]; then mkdir -p "$to" - cp -fpPR -t "$to" "$from"/* + cp -fpPR "$from"/* "$to" fi } @@ -199,21 +198,14 @@ autotools_stage_all() { las=$(find . -name \*.la -type f) cd $olddir echo "Found la files: $las" - if [ -n "$las" ]; then - # If there are .la files then libtool was used in the - # build, so install them with magic mangling. - for i in $las - do - dir=$(dirname $i) - echo "oe_libinstall -C ${STAGE_TEMP}/${libdir}/${dir} -so $(basename $i .la) ${STAGING_LIBDIR}/${dir}" - oe_libinstall -C ${STAGE_TEMP}/${libdir}/${dir} -so $(basename $i .la) ${STAGING_LIBDIR}/${dir} - done - else - # Otherwise libtool wasn't used, and lib/ can be copied - # directly. - autotools_stage_dir ${STAGE_TEMP}/${libdir} ${STAGING_LIBDIR} - fi - + for i in $las + do + sed -e 's/^installed=yes$/installed=no/' \ + -e '/^dependency_libs=/s,${WORKDIR}[[:alnum:]/\._+-]*/\([[:alnum:]\._+-]*\),${STAGING_LIBDIR}/\1,g' \ + -e "/^dependency_libs=/s,\([[:space:]']\)${libdir},\1${STAGING_LIBDIR},g" \ + -i ${STAGE_TEMP}/${libdir}/$i + done + autotools_stage_dir ${STAGE_TEMP}/${libdir} ${STAGING_LIBDIR} fi # Ok, this is nasty. pkgconfig.bbclass is usually used to install .pc files, # however some packages rely on the presence of .pc files to enable/disable -- cgit v1.2.3