]> code.ossystems Code Review - openembedded-core.git/commitdiff
autotools.bbclass: Switch stage_autotools_all to change la files itself and to stop...
authorRichard Purdie <richard@openedhand.com>
Mon, 12 May 2008 13:09:17 +0000 (13:09 +0000)
committerRichard Purdie <richard@openedhand.com>
Mon, 12 May 2008 13:09:17 +0000 (13:09 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4459 311d38ba-8fff-0310-9ca6-ca027cbcb966

meta/classes/autotools.bbclass

index 4945fe77d5c15ae61a9f07fa8ceaf49d3718c6a6..83ab06337689f72d31c846485cad9ba567fa85ba 100644 (file)
@@ -198,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 ${S} -so $(basename $i .la) ${STAGING_LIBDIR}/${dir}"
-                               oe_libinstall -C ${S} -so $(basename $i .la) ${STAGING_LIBDIR}/${dir}
-                       done
-               else
-                       # Otherwise libtool wasn't used, and lib/ can be copied
-                       # directly.
-                       echo "cp -fpPR ${STAGE_TEMP}/${libdir}/* ${STAGING_LIBDIR}"
-                       cp -fpPR ${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
        rm -rf ${STAGE_TEMP}/${mandir} || true
        rm -rf ${STAGE_TEMP}/${infodir} || true