[oe] [PATCH] glibc: install correct stubs (fixes midori crash)

Stanislav Brabec utx at penguin.cz
Tue Jul 14 19:24:43 UTC 2009


Attached patch prevents overwriting of a real stub include file by a
dummy stub file. Patch is tested only with the latest glibc from the
angstrom.

Dummy stub include causes mis-compilation of undefined number of
packages, increment of DISTRO_PR may be considered as useful.

I am not sure, why this line was there. Correct stub file is generated
by make install, at least in the current version of glibc.

--- a/recipes/glibc/glibc-stage.inc
+++ b/recipes/glibc/glibc-stage.inc
@@ -8,7 +8,6 @@ do_stage() {
 	install -d ${STAGING_INCDIR}/gnu \
 		   ${STAGING_INCDIR}/bits \
 		   ${STAGING_INCDIR}/rpcsvc
-	install -m 0644 ${S}/include/gnu/stubs.h ${STAGING_INCDIR}/gnu/
 	install -m 0644 ${B}/bits/stdio_lim.h ${STAGING_INCDIR}/bits/
 	install -m 0644 misc/syscall-list.h ${STAGING_INCDIR}/bits/syscall.h
 	for r in ${rpcsvc}; do

Review of compilation logs shows that at least following packages are
referring stub functions: glib-2.0, coreutils, module-init-tools,
openssh, rsync, e2fsprogs, libpcap, pth, python, rxvt-unicode, tar,
tcpdump.

Example of mis-compiled package:

midori fails due to GIO mis-compilation. GIO (glib-2.0) incorrectly
thinks, that inotify_init1 is implemented. But it is not true on systems
compiled with kernel headers < 2.6.27. GIO fails to initialize change
notification, which normally never happens.

Note:

Kernel added several new functions since 2.6.23 (e. g. inotify_init1).
It would be nice to reflect it somehow: update linux-libc-headers and
either keep minimal supported kernel in the build as low as possible
(makes a bit slower glibc), move affected packages from platform to
machine feeds or create different repos with different minimal kernel
version. What do you think about it?


________________________________________________________________________
Stanislav Brabec
http://www.penguin.cz/~utx/zaurus





More information about the Openembedded-devel mailing list