Patchwork [v3] image-prelink: remove hardcoded path assumptions, don't generate cache file

login
register
mail settings
Submitter Phil Blundell
Date May 17, 2011, 3:52 p.m.
Message ID <1305647579.2429.271.camel@phil-desktop>
Download mbox | patch
Permalink /patch/4259/
State New, archived
Headers show

Comments

Phil Blundell - May 17, 2011, 3:52 p.m.
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.

Signed-off-by: Phil Blundell <philb@gnu.org>
---
 meta/classes/image-prelink.bbclass |   13 +++++--------
 1 files changed, 5 insertions(+), 8 deletions(-)
Richard Purdie - May 17, 2011, 4:07 p.m.
On Tue, 2011-05-17 at 16:52 +0100, Phil Blundell wrote:
> 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.
> 
> Signed-off-by: Phil Blundell <philb@gnu.org>
> ---
>  meta/classes/image-prelink.bbclass |   13 +++++--------
>  1 files changed, 5 insertions(+), 8 deletions(-)

Merged to master (will be when it becomes accessible again), thanks.

Richard

Patch

diff --git a/meta/classes/image-prelink.bbclass b/meta/classes/image-prelink.bbclass
index ee0951c..350c29d 100644
--- a/meta/classes/image-prelink.bbclass
+++ b/meta/classes/image-prelink.bbclass
@@ -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."
 }