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>
This commit is contained in:
Jason Wessel 2012-06-12 16:42:31 -05:00 committed by Richard Purdie
parent 1a9ad7f4d7
commit 9f47c0f62e
1 changed files with 3 additions and 1 deletions

View File

@ -3,7 +3,7 @@ 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 = "r0"
PR = "r1"
SRC_URI = "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2"
@ -29,6 +29,8 @@ 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}
}