Files
poky/meta/recipes-extended/lsof/lsof_4.85.bb
Jason Wessel 9f47c0f62e lsof: Fix cross 32 -> 64bit ranlib host contamination problem
When building on a 32bit host OS and building 64 bit binaries,
the cross ar and ranlib must be called, or you get an error
as follows:

   x86_64-wrs-linux-gcc    -m64 --sysroot=/opt/build/tmp/sysroots/qemux86-64 -o lsof dfile.o dmnt.o dnode.o dproc.o dsock.o dstore.o arg.o main.o misc.o node.o print.o proc.o store.o usage.o util.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -L./lib -llsof
   ./lib/liblsof.a: could not read symbols: Archive has no index; run ranlib to add one
   collect2: error: ld returned 1 exit status

(From OE-Core rev: 5c257ee55f9e0dd66fc1bbd6e9c08918e8820178)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-13 11:57:22 +01:00

50 lines
1.4 KiB
BlitzBasic

SUMMARY = "LiSt Open Files tool"
DESCRIPTION = "Lsof is a Unix-specific diagnostic tool. \
Its name stands for LiSt Open Files, and it does just that."
SECTION = "devel"
LICENSE = "BSD"
PR = "r1"
SRC_URI = "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2"
SRC_URI[md5sum] = "102ee2081172bbe76dccaa6cceda8573"
SRC_URI[sha256sum] = "49aa58e63539c45bada514a6a2e5a1c9f946ada1f4137dc9154cf4bf6054a1c1"
LOCALSRC = "file://${WORKDIR}/lsof_${PV}/lsof_${PV}_src.tar"
S = "${WORKDIR}/lsof_${PV}_src"
LIC_FILES_CHKSUM = "file://${S}/00README;beginline=645;endline=679;md5=e0108f7811919035515a97f872eb8ee2"
python do_unpack () {
bb.build.exec_func('base_do_unpack', d)
src_uri = d.getVar('SRC_URI')
d.setVar('SRC_URI', '${LOCALSRC}')
bb.build.exec_func('base_do_unpack', d)
d.setVar('SRC_URI', src_uri)
}
export LSOF_OS = "${TARGET_OS}"
LSOF_OS_libc-uclibc = "linux"
LSOF_OS_libc-glibc = "linux"
export LSOF_INCLUDE = "${STAGING_INCDIR}"
do_configure () {
export LSOF_AR="${AR} cr"
export LSOF_RANLIB="${RANLIB}"
yes | ./Configure ${LSOF_OS}
}
export I = "${STAGING_INCDIR}"
export L = "${STAGING_INCDIR}"
export EXTRA_OEMAKE = ""
do_compile () {
oe_runmake 'CC=${CC}' 'CFGL=${LDFLAGS} -L./lib -llsof' 'DEBUG=' 'INCL=${CFLAGS}'
}
do_install () {
install -d ${D}${sbindir} ${D}${mandir}/man8
install -m 4755 lsof ${D}${sbindir}/lsof
install -m 0644 lsof.8 ${D}${mandir}/man8/lsof.8
}