do_rootfs[depends] += "mklibs-native:do_populate_sysroot"

IMAGE_PREPROCESS_COMMAND += "mklibs_optimize_image; "

inherit linuxloader

mklibs_optimize_image_doit() {
	rm -rf ${WORKDIR}/mklibs
	mkdir -p ${WORKDIR}/mklibs/dest
	cd ${IMAGE_ROOTFS}
	du -bs > ${WORKDIR}/mklibs/du.before.mklibs.txt

	# Build a list of dynamically linked executable ELF files.
	# Omit libc/libpthread as a special case because it has an interpreter
	# but is primarily what we intend to strip down.
	for i in `find . -type f -executable ! -name 'libc-*' ! -name 'libpthread-*'`; do
		file $i | grep -q ELF || continue
		${HOST_PREFIX}readelf -l $i | grep -q INTERP || continue
		echo $i
	done > ${WORKDIR}/mklibs/executables.list

	dynamic_loader=$(linuxloader)

	mklibs -v \
		--ldlib ${dynamic_loader} \
		--libdir ${baselib} \
		--sysroot ${PKG_CONFIG_SYSROOT_DIR} \
		--gcc-options "--sysroot=${PKG_CONFIG_SYSROOT_DIR}" \
		--root ${IMAGE_ROOTFS} \
		--target `echo ${TARGET_PREFIX} | sed 's/-$//' ` \
		-d ${WORKDIR}/mklibs/dest \
		`cat ${WORKDIR}/mklibs/executables.list`

	cd ${WORKDIR}/mklibs/dest
	for i in *
	do
		cp $i `find ${IMAGE_ROOTFS} -name $i`
	done

	cd ${IMAGE_ROOTFS}
	du -bs > ${WORKDIR}/mklibs/du.after.mklibs.txt

	echo rootfs size before mklibs optimization: `cat ${WORKDIR}/mklibs/du.before.mklibs.txt`
	echo rootfs size after mklibs optimization: `cat ${WORKDIR}/mklibs/du.after.mklibs.txt`
}

mklibs_optimize_image() {
	for img in ${MKLIBS_OPTIMIZED_IMAGES}
	do
		if [ "${img}" = "${PN}" ] || [ "${img}" = "all" ]
		then
			mklibs_optimize_image_doit
			break
		fi
	done
}
