Files
poky/meta/recipes-devtools/prelink/prelink_git.bb
Khem Raj 7c3f509c06 prelink: Fix SRC_URI
The SHA we use it actually on cross_prelink branch
if you do not use yocto source mirrors then the fetch
for prelink on dora fails due to missing branch in SRC_URI

(From OE-Core rev: 13b57cab7cdd2bf967622ec5015478dc56938b8b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-24 11:06:32 +01:00

82 lines
2.5 KiB
BlitzBasic

SECTION = "devel"
# Need binutils for libiberty.a
# Would need transfig-native for documentation if it wasn't disabled
DEPENDS = "elfutils binutils"
SUMMARY = "An ELF prelinking utility"
DESCRIPTION = "The prelink package contains a utility which modifies ELF shared libraries \
and executables, so that far fewer relocations need to be resolved at \
runtime and thus programs come up faster."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
SRCREV = "6822ec76aa95f278195aeae59d4868ef224d7e4d"
PV = "1.0+git${SRCPV}"
#
# The cron script attempts to re-prelink the system daily -- on
# systems where users are adding applications, this might be reasonable
# but for embedded, we should be re-running prelink -a after an update.
#
# Default is prelinking is enabled.
#
SUMMARY_${PN}-cron = "Cron scripts to control automatic prelinking"
DESCRIPTION_${PN}-cron = "Cron scripts to control automatic prelinking. \
See: ${sysconfdir}/cron.daily/prelink for configuration information."
FILES_${PN}-cron = "${sysconfdir}/cron.daily ${sysconfdir}/default"
PACKAGES =+ "${PN}-cron"
SRC_URI = "git://git.yoctoproject.org/prelink-cross.git;branch=cross_prelink \
file://prelink.conf \
file://prelink.cron.daily \
file://prelink.default \
file://macros.prelink"
TARGET_OS_ORIG := "${TARGET_OS}"
OVERRIDES_append = ":${TARGET_OS_ORIG}"
S = "${WORKDIR}/git/trunk"
inherit autotools
BBCLASSEXTEND = "native"
EXTRA_OECONF = "--disable-selinux --with-pkgversion=${PV}-${PR} \
--with-bugurl=http://bugzilla.yoctoproject.org/"
do_configure_prepend () {
# Disable documentation!
echo "all:" > ${S}/doc/Makefile.am
}
do_install_append () {
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
}
# If we're using image-prelink, we want to skip this on the host side
# but still do it if the package is installed on the target...
pkg_postinst_prelink() {
#!/bin/sh
if [ "x$D" != "x" ]; then
${@base_contains('USER_CLASSES', 'image-prelink', 'exit 0', 'exit 1', d)}
fi
prelink -a
}
pkg_prerm_prelink() {
#!/bin/sh
if [ "x$D" != "x" ]; then
exit 1
fi
prelink -au
}