]> code.ossystems Code Review - openembedded-core.git/commit
lsof: define linux C library type when using eglibc
authorTing Liu <b28495@freescale.com>
Fri, 13 Jul 2012 05:14:25 +0000 (00:14 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 17 Jul 2012 09:23:15 +0000 (10:23 +0100)
commitfbf22dfe1a0dca3fc7ac56e4fd274c0145efbc70
tree687b99ebada07e04b866f061fee0ce85aed237f1
parentb753eab1028ba48dfdcdeefa07f3f30743f3ee45
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 <b28495@freescale.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
meta/recipes-extended/lsof/lsof_4.85.bb