rpm: Fix rpm usage of prelink on the target

RPM has the ability to validate files that have been prelinked, however
the necessary configuration and staging was not done properly.  Resolve
this issue by fixing the macro paths, providing the missing RPM macro,
and correcting a defect in the way the prelink image class was working
with the necessary configuration file.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
This commit is contained in:
Mark Hatle 2011-02-25 17:34:20 -06:00
parent 08c8f7bb73
commit 6c6d4f4bff
3 changed files with 8 additions and 5 deletions

View File

@ -24,7 +24,7 @@ prelink_image () {
${STAGING_DIR_NATIVE}/usr/sbin/prelink --root ${IMAGE_ROOTFS} -amR
# Remove the prelink.conf if we had to add it.
if [ $dummy_prelink_conf ]; then
if [ "$dummy_prelink_conf" == "true" ]; then
rm -f ${IMAGE_ROOTFS}/etc/prelink.conf
fi

View File

@ -8,12 +8,13 @@ runtime and thus programs come up faster."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
PV = "1.0+git${SRCPV}"
PR = "r1"
PR = "r2"
SRC_URI = "git://git.pokylinux.org/prelink-cross.git;protocol=git \
file://prelink.conf \
file://prelink.cron.daily \
file://prelink.default"
file://prelink.default \
file://macros.prelink"
TARGET_OS_ORIG := "${TARGET_OS}"
OVERRIDES_append = ":${TARGET_OS_ORIG}"
@ -33,10 +34,11 @@ do_configure_prepend () {
}
do_install_append () {
install -d ${D}${sysconfdir}/cron.daily ${D}${sysconfdir}/default
install -d ${D}${sysconfdir}/cron.daily ${D}${sysconfdir}/default ${D}${sysconfdir}/rpm
install -m 0644 ${WORKDIR}/prelink.conf ${D}${sysconfdir}/prelink.conf
install -m 0644 ${WORKDIR}/prelink.cron.daily ${D}${sysconfdir}/cron.daily/prelink
install -m 0644 ${WORKDIR}/prelink.default ${D}${sysconfdir}/default/prelink
install -m 0644 ${WORKDIR}/macros.prelink ${D}${sysconfdir}/rpm/macros.prelink
}
pkg_postinst_prelink() {

View File

@ -74,7 +74,8 @@ inherit autotools gettext
acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java"
# Specify the default rpm macros in terms of adjustable variables
rpm_macros = "%{_usrlibrpm}/macros:%{_usrlibrpm}/poky/macros:%{_usrlibrpm}/poky/%{_target}/macros:~/.oerpmmacros"
rpm_macros = "%{_usrlibrpm}/macros:%{_usrlibrpm}/poky/macros:%{_usrlibrpm}/poky/%{_target}/macros:%{_etcrpm}/macros.*:%{_etcrpm}/macros:%{_etcrpm}/%{_target}/macros:~/.oerpmmacros"
rpm_macros_virtclass-native = "%{_usrlibrpm}/macros:%{_usrlibrpm}/poky/macros:%{_usrlibrpm}/poky/%{_target}/macros:~/.oerpmmacros"
# Configure values taken from rpm.spec
WITH_BZIP2 = "--with-bzip2"