mirror of
https://git.yoctoproject.org/poky
synced 2026-02-06 08:48:45 +01:00
I'm sick of seeing people adding to EXPORT_FUNCTIONS in these classes when they clearly have no idea what it does. Worse, these uses of it are all broken, the naming is incorrect and they do nothing. Lets remove them and try and preserve any remaining part of my sanity. (From OE-Core rev: 05a2fb19f722652c5d13be911b8ed45a264bbb40) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
72 lines
1.7 KiB
Plaintext
72 lines
1.7 KiB
Plaintext
do_rootfs[depends] += "mklibs-native:do_populate_sysroot"
|
|
|
|
IMAGE_PREPROCESS_COMMAND += "mklibs_optimize_image; "
|
|
|
|
mklibs_optimize_image_doit() {
|
|
rm -rf ${WORKDIR}/mklibs
|
|
mkdir -p ${WORKDIR}/mklibs/dest
|
|
cd ${IMAGE_ROOTFS}
|
|
du -bs > ${WORKDIR}/mklibs/du.before.mklibs.txt
|
|
for i in `find .`; do file $i; done \
|
|
| grep ELF \
|
|
| grep "LSB *executable" \
|
|
| grep "dynamically linked" \
|
|
| sed "s/:.*//" \
|
|
| sed "s+^\./++" \
|
|
> ${WORKDIR}/mklibs/executables.list
|
|
|
|
case ${TARGET_ARCH} in
|
|
powerpc | mips | microblaze )
|
|
dynamic_loader="${base_libdir}/ld.so.1"
|
|
;;
|
|
powerpc64)
|
|
dynamic_loader="${base_libdir}/ld64.so.1"
|
|
;;
|
|
x86_64)
|
|
dynamic_loader="${base_libdir}/ld-linux-x86-64.so.2"
|
|
;;
|
|
i586 )
|
|
dynamic_loader="${base_libdir}/ld-linux.so.2"
|
|
;;
|
|
arm )
|
|
dynamic_loader="${base_libdir}/ld-linux.so.3"
|
|
;;
|
|
* )
|
|
dynamic_loader="/unknown_dynamic_linker"
|
|
;;
|
|
esac
|
|
|
|
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
|
|
}
|