From fbf22dfe1a0dca3fc7ac56e4fd274c0145efbc70 Mon Sep 17 00:00:00 2001 From: Ting Liu Date: Fri, 13 Jul 2012 00:14:25 -0500 Subject: lsof: define linux C library type when using eglibc lsof tries to compile a temp c source file and execute the binary to determine linux C library type (file Configure, line 2689-2717). It is inpracticable for cross-compilation and may have build issue on some distros since it depends on host settings. Fix below error when building for 64bit target on 64bit host: [...] | dsock.c:481:44: error: 'TCP_LISTEN' undeclared (first use in this function) | dsock.c:482:45: error: 'TCP_CLOSING' undeclared (first use in this function) [...] | make: *** [dsock.o] Error 1 The actual issue exists in do_configure: [...] Testing C library type with cc ... done Cannot determine C library type; assuming it is not glibc. Which is in turn caused by missing 'gnu/stubs-32.h" when compiling the temp c source file on host: [...] fatal error: gnu/stubs-32.h: No such file or directory compilation terminated. file gnu/stubs-32.h is provided by 32bit glibc. Signed-off-by: Ting Liu Signed-off-by: Saul Wold --- meta/recipes-extended/lsof/lsof_4.85.bb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'meta/recipes-extended') diff --git a/meta/recipes-extended/lsof/lsof_4.85.bb b/meta/recipes-extended/lsof/lsof_4.85.bb index 58237256af..de7ff680ca 100644 --- a/meta/recipes-extended/lsof/lsof_4.85.bb +++ b/meta/recipes-extended/lsof/lsof_4.85.bb @@ -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 = "r1" +PR = "r2" SRC_URI = "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2" @@ -31,6 +31,11 @@ export LSOF_INCLUDE = "${STAGING_INCDIR}" do_configure () { export LSOF_AR="${AR} cr" export LSOF_RANLIB="${RANLIB}" + if [ "x${EGLIBCVERSION}" != "x" ];then + LINUX_CLIB=`echo ${EGLIBCVERSION} |sed -e 's,\.,,g'` + LINUX_CLIB="-DGLIBCV=${LINUX_CLIB}" + export LINUX_CLIB + fi yes | ./Configure ${LSOF_OS} } -- cgit v1.2.3