diff options
| author | Richard Purdie <richard@openedhand.com> | 2008-01-29 17:59:33 +0000 | 
|---|---|---|
| committer | Richard Purdie <richard@openedhand.com> | 2008-01-29 17:59:33 +0000 | 
| commit | 3b79bc69b2aeb767a73e4c438fe3ed75d870f5fd (patch) | |
| tree | 9d4aadcd93cfdf5e7831bb53d5c07aaee6dcbc52 /meta/classes/autotools.bbclass | |
| parent | 4469013749743d00c6e9c79b33641bad833bbfdc (diff) | |
| download | openembedded-core-3b79bc69b2aeb767a73e4c438fe3ed75d870f5fd.tar.gz openembedded-core-3b79bc69b2aeb767a73e4c438fe3ed75d870f5fd.tar.bz2 openembedded-core-3b79bc69b2aeb767a73e4c438fe3ed75d870f5fd.zip | |
autotools.bbclass: Fix so libraries in directories are handled correctly with oe_libinstall, fixing staging QA issues. Thanks go to Ross for the basic patch.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3618 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/classes/autotools.bbclass')
| -rw-r--r-- | meta/classes/autotools.bbclass | 26 | 
1 files changed, 18 insertions, 8 deletions
| diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass index 07b8735c2e..d65a151e60 100644 --- a/meta/classes/autotools.bbclass +++ b/meta/classes/autotools.bbclass @@ -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 | 
