]> code.ossystems Code Review - openembedded-core.git/commitdiff
autotools.bbclass: Fix so libraries in directories are handled correctly with oe_libi...
authorRichard Purdie <richard@openedhand.com>
Tue, 29 Jan 2008 17:59:33 +0000 (17:59 +0000)
committerRichard Purdie <richard@openedhand.com>
Tue, 29 Jan 2008 17:59:33 +0000 (17:59 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3618 311d38ba-8fff-0310-9ca6-ca027cbcb966

meta/classes/autotools.bbclass

index 07b8735c2ebd5cc658d3fd1a5dd10696a849832b..d65a151e60ae0af7eda5a5e409a98e16be398ab6 100644 (file)
@@ -175,14 +175,24 @@ autotools_stage_all() {
        fi
        if [ -d ${STAGE_TEMP}/${libdir} ]
        then
-               for i in ${STAGE_TEMP}/${libdir}/*.la
-               do
-                       if [ ! -f "$i" ]; then
-                               cp -fpPR ${STAGE_TEMP}/${libdir}/* ${STAGING_LIBDIR}
-                               break
-                       fi
-                       oe_libinstall -so $(basename $i .la) ${STAGING_LIBDIR}
-               done
+               cd ${STAGE_TEMP}/${libdir}
+               las=$(find . -name \*.la -type f)
+               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
        fi
        if [ -d ${STAGE_TEMP}/${datadir}/aclocal ]; then
                install -d ${STAGING_DATADIR}/aclocal