diff options
Diffstat (limited to 'meta')
| -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 | 
