anchor.diff:  	chmod -R a+r ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/include/
   	find ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/include/ -type d | xargs chmod +x
   
  -        echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libpthread.so
  -        echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libc.so
  +	echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libpthread.so
  +	echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libc.so
  +
   	# remove unwanted housekeeping files
   	mv ${SDK_OUTPUT}${libdir}/../${TARGET_SYS}/lib/ipkg/status ${SDK_OUTPUT}/${prefix}/package-status
  -	rm -rf ${SDK_OUTPUT}${libdir}/ipkg
  +	rm -Rf ${SDK_OUTPUT}${libdir}/ipkg
  +	mv ${SDK_OUTPUT}/usr/lib/ipkg/status ${SDK_OUTPUT}/${prefix}/package-status-host
  +	rm -Rf ${SDK_OUTPUT}/usr/lib
  +
  +	# extract and store ipks, pkgdata, pkgmaps and shlibs data
  +	target_pkgs=`cat ${SDK_OUTPUT}/${prefix}/package-status | grep Package: | cut -f 2 -d ' '`
  +	mkdir -p ${SDK_OUTPUT}/${prefix}/ipk/
  +	mkdir -p ${SDK_OUTPUT}/${prefix}/pkgdata/runtime/
  +	mkdir -p ${SDK_OUTPUT}/${prefix}/pkgmaps/debian/
  +	mkdir -p ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/shlibs/
  +	for pkg in $target_pkgs ; do
  +		for arch in $revipkgarchs; do
  +			if [ -e ${DEPLOY_DIR_IPK}/${pkg}_*_$arch.ipk ]; then
  +				echo "Found ${DEPLOY_DIR_IPK}/${pkg}_$arch.ipk"
  +				cp ${DEPLOY_DIR_IPK}/${pkg}_*_$arch.ipk ${SDK_OUTPUT}/${prefix}/ipk/
  +				orig_pkg=`ipkg-list-fields ${DEPLOY_DIR_IPK}/${pkg}_*_$arch.ipk | grep OE: | cut -d ' ' -f2`
  +				pkg_subdir=$arch${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}
  +				mkdir -p ${SDK_OUTPUT}/${prefix}/pkgdata/$pkg_subdir/runtime
  +				cp ${STAGING_DIR}/pkgdata/$pkg_subdir/$orig_pkg ${SDK_OUTPUT}/${prefix}/pkgdata/$pkg_subdir/
  +				subpkgs=`cat ${STAGING_DIR}/pkgdata/$pkg_subdir/$orig_pkg | grep PACKAGES: | cut -b 10-`
  +				for subpkg in $subpkgs; do
  +					cp ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg ${SDK_OUTPUT}/${prefix}/pkgdata/$pkg_subdir/runtime/
  +					if [ -e ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg.packaged ];then
  +						cp ${STAGING_DIR}/pkgdata/$pkg_subdir/runtime/$subpkg.packaged ${SDK_OUTPUT}/${prefix}/pkgdata/$pkg_subdir/runtime/
  +					fi
  +					if [ -e ${STAGING_DIR}/pkgmaps/debian/$subpkg ]; then
  +						cp ${STAGING_DIR}/pkgmaps/debian/$subpkg ${SDK_OUTPUT}/${prefix}/pkgmaps/debian/
  +					fi
  +					if [ -e ${STAGING_DIR}/${TARGET_SYS}/shlibs/$subpkg.list ]; then
  +						cp ${STAGING_DIR}/${TARGET_SYS}/shlibs/$subpkg.* ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/shlibs/
  +					fi
  +				done
  +				break
  +			fi
  +		done
  +	done
  +
   
   	# remove unwanted executables
   	rm -rf ${SDK_OUTPUT}/${prefix}/sbin ${SDK_OUTPUT}/${prefix}/etc
   
   	# remove broken .la files
  -	rm ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/*.la
  +	rm -f ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/*.la
   
   	# fix pkgconfig data files
   	cd ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/pkgconfig
  
positive.code: }
  
  do_populate_sdk() {
          sdk_ipk_do_indexes
  	rm -rf ${SDK_OUTPUT}
  	mkdir -p ${SDK_OUTPUT}
  
          echo "Creating host.conf..."
  
  	cat <<EOF >${SDK_DIR}/ipkg-host.conf
  src oe file:${DEPLOY_DIR_IPK}/${BUILD_ARCH}
  arch ${BUILD_ARCH} 1
  EOF
          echo "done."
          priority=1
          for arch in $ipkgarchs; do
                  echo "arch $arch $priority" >> ${SDK_DIR}/ipkg-target.conf
                  priority=$(expr $priority + 5)
                  if [ -e ${DEPLOY_DIR_IPK}/$arch/Packages ] ; then
                          echo "src oe-$arch file:${DEPLOY_DIR_IPK}/$arch" >> ${SDK_DIR}/ipkg-target.conf
                  fi
          done
  
  	rm -r ${SDK_OUTPUT}
  	mkdir -p ${SDK_OUTPUT}
  
  	${IPKG_HOST} update
  	${IPKG_HOST} -nodeps install ${HOST_INSTALL}
  
  	${IPKG_TARGET} update
  	${IPKG_TARGET} install ${TARGET_INSTALL}
  
negative.code: 	cp -pPR ${SDK_OUTPUT}/${prefix}/usr/* ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}
  	rm -rf ${SDK_OUTPUT}/${prefix}/usr/
  
  	cp -pPR ${SDK_OUTPUT}/${prefix}/lib/* ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib
  	rm -rf ${SDK_OUTPUT}/${prefix}/lib/*
  
  	for fn in `ls ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/`; do
  		if [ -h ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/$fn ]; then
  			link=`readlink ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/$fn`
  			bname=`basename $link`
  			if [ ! -e $link -a -e ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/$bame ]; then
  				rm ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/$fn
  				ln -s $bname ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/$fn
  			fi
  		fi
  	done
  
  	mv ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/gcc* ${SDK_OUTPUT}/${prefix}/lib
  
  