image-prelink: remove hardcoded path assumptions, don't generate cache file

Pass -N option to prelink so that no cache file is generated (obviates need for deleting it afterwards).
Use symbolic names, ${sysconfdir} et al., rather than hardcoded paths.
Pass explicit -c option to prelink in case ${sysconfdir} and ${sysconfdir_native} are different.

(From OE-Core rev: 78a3cc9e8588e37badcd2ea02d2cf3b5a25ee5b8)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Phil Blundell 2011-05-17 16:52:59 +01:00 committed by Richard Purdie
parent 63f8d85ad5
commit 7cc59107f9
1 changed files with 5 additions and 8 deletions

View File

@ -12,25 +12,22 @@ prelink_image () {
echo "Size before prelinking $pre_prelink_size."
# We need a prelink conf on the filesystem, add one if it's missing
if [ ! -e ${IMAGE_ROOTFS}/etc/prelink.conf ]; then
cp ${STAGING_DIR_NATIVE}/etc/prelink.conf \
${IMAGE_ROOTFS}/etc/prelink.conf
if [ ! -e ${IMAGE_ROOTFS}${sysconfdir}/prelink.conf ]; then
cp ${STAGING_DIR_NATIVE}${sysconfdir_native}/prelink.conf \
${IMAGE_ROOTFS}${sysconfdir}/prelink.conf
dummy_prelink_conf=true;
else
dummy_prelink_conf=false;
fi
# prelink!
${STAGING_DIR_NATIVE}/usr/sbin/prelink --root ${IMAGE_ROOTFS} -amR
${STAGING_DIR_NATIVE}${sbindir_native}/prelink --root ${IMAGE_ROOTFS} -amR -N -c ${sysconfdir}/prelink.conf
# Remove the prelink.conf if we had to add it.
if [ "$dummy_prelink_conf" == "true" ]; then
rm -f ${IMAGE_ROOTFS}/etc/prelink.conf
rm -f ${IMAGE_ROOTFS}${sysconfdir}/prelink.conf
fi
# Cleanup temporary file, it's not needed...
rm -f ${IMAGE_ROOTFS}/etc/prelink.cache
pre_prelink_size=`du -ks ${IMAGE_ROOTFS} | awk '{size = $1 ; print size }'`
echo "Size after prelinking $pre_prelink_size."
}