Downloaded compile-patch for 2.1.2 and ebuild to apply the patch and still having problems on compilation: >>> emerge (1 of 1) dev-util/valgrind-2.1.2 to / >>> md5 src_uri ;-) valgrind-2.1.2.tar.bz2 >>> Unpacking source... >>> Unpacking valgrind-2.1.2.tar.bz2 to /var/tmp/portage/valgrind-2.1.2/work * Applying valgrind-2.1.2-compile.patch... [ ok ] >>> Source unpacked. X configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for i686-pc-linux-gnu-strip... no checking for strip... strip checking whether to enable maintainer-specific portions of Makefiles... no checking whether ln -s works... yes checking for i686-pc-linux-gnu-gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for i686-pc-linux-gnu-g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking for i686-pc-linux-gnu-ranlib... no checking for ranlib... ranlib checking for perl... /usr/bin/perl checking for gdb... /usr/bin/gdb checking for a supported version of gcc... ok (gcc (GCC) 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)) checking build system type... i686-pc-linux checking host system type... i686-pc-linux-gnu checking for a supported CPU... ok (i686) checking for a supported OS... ok (linux-gnu) checking for the kernel version... 2.6 family (2.6.7-gentoo-r11) checking for egrep... grep -E checking the glibc version... 2.3 family checking whether sched_param has a sched_priority member... yes checking whether nfds_t is defined... yes checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include checking XFree version... Xlib: connection to ":0.0" refused by server Xlib: No protocol specified not a XFree86 server unknown XFree86 server () checking if gas accepts .cfi... yes checking if gcc accepts -mpreferred-stack-boundary... yes checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking sys/statfs.h usability... yes checking sys/statfs.h presence... yes checking for sys/statfs.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/endian.h usability... no checking sys/endian.h presence... no checking for sys/endian.h... no checking endian.h usability... yes checking endian.h presence... yes checking for endian.h... yes checking termios.h usability... yes checking termios.h presence... yes checking for termios.h... yes checking for unistd.h... (cached) yes checking utime.h usability... yes checking utime.h presence... yes checking for utime.h... yes checking linux/fb.h usability... yes checking linux/fb.h presence... yes checking for linux/fb.h... yes checking linux/mii.h usability... no checking linux/mii.h presence... yes configure: WARNING: linux/mii.h: present but cannot be compiled configure: WARNING: linux/mii.h: check for missing prerequisite headers? configure: WARNING: linux/mii.h: see the Autoconf documentation configure: WARNING: linux/mii.h: section "Present But Cannot Be Compiled" configure: WARNING: linux/mii.h: proceeding with the preprocessor's result configure: WARNING: linux/mii.h: in the future, the compiler will take precedence configure: WARNING: ## ------------------------------------------ ## configure: WARNING: ## Report this to the AC_PACKAGE_NAME lists. ## configure: WARNING: ## ------------------------------------------ ## checking for linux/mii.h... yes checking for uid_t in sys/types.h... yes checking for off_t... yes checking for size_t... yes checking whether time.h and sys/time.h may both be included... yes checking for __pthread_unwind_buf_t... no checking for u16... no checking for working memcmp... yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking for getpagesize... yes checking for working mmap... yes checking return type of signal handlers... void checking for floor... no checking for memchr... yes checking for memset... yes checking for mkdir... yes checking for strchr... yes checking for strdup... yes checking for strpbrk... yes checking for strrchr... yes checking for strstr... yes checking for semtimedop... yes configure: creating ./config.status config.status: creating Makefile config.status: creating valgrind.spec config.status: creating valgrind.pc config.status: creating docs/Makefile config.status: creating tests/Makefile config.status: creating tests/vg_regtest config.status: creating tests/unused/Makefile config.status: creating include/Makefile config.status: creating auxprogs/Makefile config.status: creating coregrind/Makefile config.status: creating coregrind/demangle/Makefile config.status: creating coregrind/docs/Makefile config.status: creating coregrind/x86/Makefile config.status: creating addrcheck/Makefile config.status: creating addrcheck/tests/Makefile config.status: creating addrcheck/docs/Makefile config.status: creating memcheck/Makefile config.status: creating memcheck/tests/Makefile config.status: creating memcheck/docs/Makefile config.status: creating cachegrind/Makefile config.status: creating cachegrind/tests/Makefile config.status: creating cachegrind/docs/Makefile config.status: creating cachegrind/cg_annotate config.status: creating helgrind/Makefile config.status: creating helgrind/tests/Makefile config.status: creating helgrind/docs/Makefile config.status: creating massif/Makefile config.status: creating massif/hp2ps/Makefile config.status: creating massif/tests/Makefile config.status: creating massif/docs/Makefile config.status: creating corecheck/Makefile config.status: creating corecheck/tests/Makefile config.status: creating corecheck/docs/Makefile config.status: creating lackey/Makefile config.status: creating lackey/tests/Makefile config.status: creating lackey/docs/Makefile config.status: creating none/Makefile config.status: creating none/tests/Makefile config.status: creating none/docs/Makefile config.status: creating config.h config.status: executing depfiles commands Using the following suppressions by default: glibc-2.3.supp xfree-3.supp xfree-4.supp make all-recursive make[1]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2' Making all in include make[2]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/include' make all-am make[3]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/include' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/include' make[2]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/include' Making all in coregrind make[2]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' rm -f vg_toolint.c /usr/bin/perl ./gen_toolint.pl callwrap < ./toolfuncs.def > vg_toolint.c || rm -f vg_toolint.c rm -f vg_toolint.h /usr/bin/perl ./gen_toolint.pl proto < ./toolfuncs.def > vg_toolint.h || rm -f vg_toolint.h /usr/bin/perl ./gen_toolint.pl missingfuncs < ./toolfuncs.def >> vg_toolint.c || rm -f vg_toolint.c /usr/bin/perl ./gen_toolint.pl struct < ./toolfuncs.def >> vg_toolint.h || rm -f vg_toolint.h /usr/bin/perl ./gen_toolint.pl initfunc < ./toolfuncs.def >> vg_toolint.c || rm -f vg_toolint.c /usr/bin/perl ./gen_toolint.pl initdlsym < ./toolfuncs.def >> vg_toolint.c || rm -f vg_toolint.c /usr/bin/perl ./gen_toolint.pl structdef < ./toolfuncs.def >> vg_toolint.c || rm -f vg_toolint.c make all-recursive make[3]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' Making all in x86 make[4]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/x86' gcc -Wl,--verbose -nostdlib 2>&1 | sed \ -e '1,/^=====\+$/d' \ -e '/^=====\+$/d' \ -e 's/ENTRY(_start)/ENTRY(_ume_entry)/' \ -e 's/0x08048000/kickstart_base/g' > stage2.lds || rm -f stage2.lds make all-am make[5]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/x86' make[5]: Nothing to be done for `all-am'. make[5]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/x86' make[4]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/x86' Making all in demangle make[4]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/demangle' if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../coregrind -I../../coregrind -I../../include -I../../include -Winline -Wall -Wshadow -O -fomit-frame-pointer -g -Wno-unused -Wno-shadow -MT cp-demangle.o -MD -MP -MF ".deps/cp-demangle.Tpo" -c -o cp-demangle.o cp-demangle.c; \ then mv -f ".deps/cp-demangle.Tpo" ".deps/cp-demangle.Po"; else rm -f ".deps/cp-demangle.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../coregrind -I../../coregrind -I../../include -I../../include -Winline -Wall -Wshadow -O -fomit-frame-pointer -g -Wno-unused -MT cplus-dem.o -MD -MP -MF ".deps/cplus-dem.Tpo" -c -o cplus-dem.o cplus-dem.c; \ then mv -f ".deps/cplus-dem.Tpo" ".deps/cplus-dem.Po"; else rm -f ".deps/cplus-dem.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../coregrind -I../../coregrind -I../../include -I../../include -Winline -Wall -Wshadow -O -fomit-frame-pointer -g -MT dyn-string.o -MD -MP -MF ".deps/dyn-string.Tpo" -c -o dyn-string.o dyn-string.c; \ then mv -f ".deps/dyn-string.Tpo" ".deps/dyn-string.Po"; else rm -f ".deps/dyn-string.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../coregrind -I../../coregrind -I../../include -I../../include -Winline -Wall -Wshadow -O -fomit-frame-pointer -g -MT safe-ctype.o -MD -MP -MF ".deps/safe-ctype.Tpo" -c -o safe-ctype.o safe-ctype.c; \ then mv -f ".deps/safe-ctype.Tpo" ".deps/safe-ctype.Po"; else rm -f ".deps/safe-ctype.Tpo"; exit 1; fi rm -f libdemangle.a ar cru libdemangle.a cp-demangle.o cplus-dem.o dyn-string.o safe-ctype.o ranlib libdemangle.a make[4]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind/demangle' Making all in . make[4]: Entering directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT stage1.o -MD -MP -MF ".deps/stage1.Tpo" -c -o stage1.o stage1.c; \ then mv -f ".deps/stage1.Tpo" ".deps/stage1.Po"; else rm -f ".deps/stage1.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT ume.o -MD -MP -MF ".deps/ume.Tpo" -c -o ume.o ume.c; \ then mv -f ".deps/ume.Tpo" ".deps/ume.Po"; else rm -f ".deps/ume.Tpo"; exit 1; fi gcc -I./demangle -I../include -I../include -I./x86 -I.. -c -o ume_entry.o `test -f 'x86/ume_entry.S' || echo './'`x86/ume_entry.S if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT ume_go.o -MD -MP -MF ".deps/ume_go.Tpo" -c -o ume_go.o `test -f 'x86/ume_go.c' || echo './'`x86/ume_go.c; \ then mv -f ".deps/ume_go.Tpo" ".deps/ume_go.Po"; else rm -f ".deps/ume_go.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_scheduler.o -MD -MP -MF ".deps/vg_scheduler.Tpo" -c -o vg_scheduler.o vg_scheduler.c; \ then mv -f ".deps/vg_scheduler.Tpo" ".deps/vg_scheduler.Po"; else rm -f ".deps/vg_scheduler.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_default.o -MD -MP -MF ".deps/vg_default.Tpo" -c -o vg_default.o vg_default.c; \ then mv -f ".deps/vg_default.Tpo" ".deps/vg_default.Po"; else rm -f ".deps/vg_default.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_demangle.o -MD -MP -MF ".deps/vg_demangle.Tpo" -c -o vg_demangle.o vg_demangle.c; \ then mv -f ".deps/vg_demangle.Tpo" ".deps/vg_demangle.Po"; else rm -f ".deps/vg_demangle.Tpo"; exit 1; fi gcc -I./demangle -I../include -I../include -I./x86 -I.. -c vg_dispatch.S if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_errcontext.o -MD -MP -MF ".deps/vg_errcontext.Tpo" -c -o vg_errcontext.o vg_errcontext.c; \ then mv -f ".deps/vg_errcontext.Tpo" ".deps/vg_errcontext.Po"; else rm -f ".deps/vg_errcontext.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_execontext.o -MD -MP -MF ".deps/vg_execontext.Tpo" -c -o vg_execontext.o vg_execontext.c; \ then mv -f ".deps/vg_execontext.Tpo" ".deps/vg_execontext.Po"; else rm -f ".deps/vg_execontext.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_from_ucode.o -MD -MP -MF ".deps/vg_from_ucode.Tpo" -c -o vg_from_ucode.o vg_from_ucode.c; \ then mv -f ".deps/vg_from_ucode.Tpo" ".deps/vg_from_ucode.Po"; else rm -f ".deps/vg_from_ucode.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_hashtable.o -MD -MP -MF ".deps/vg_hashtable.Tpo" -c -o vg_hashtable.o vg_hashtable.c; \ then mv -f ".deps/vg_hashtable.Tpo" ".deps/vg_hashtable.Po"; else rm -f ".deps/vg_hashtable.Tpo"; exit 1; fi gcc -I./demangle -I../include -I../include -I./x86 -I.. -c vg_helpers.S if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_instrument.o -MD -MP -MF ".deps/vg_instrument.Tpo" -c -o vg_instrument.o vg_instrument.c; \ then mv -f ".deps/vg_instrument.Tpo" ".deps/vg_instrument.Po"; else rm -f ".deps/vg_instrument.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_main.o -MD -MP -MF ".deps/vg_main.Tpo" -c -o vg_main.o vg_main.c; \ then mv -f ".deps/vg_main.Tpo" ".deps/vg_main.Po"; else rm -f ".deps/vg_main.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_malloc2.o -MD -MP -MF ".deps/vg_malloc2.Tpo" -c -o vg_malloc2.o vg_malloc2.c; \ then mv -f ".deps/vg_malloc2.Tpo" ".deps/vg_malloc2.Po"; else rm -f ".deps/vg_malloc2.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_memory.o -MD -MP -MF ".deps/vg_memory.Tpo" -c -o vg_memory.o vg_memory.c; \ then mv -f ".deps/vg_memory.Tpo" ".deps/vg_memory.Po"; else rm -f ".deps/vg_memory.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_messages.o -MD -MP -MF ".deps/vg_messages.Tpo" -c -o vg_messages.o vg_messages.c; \ then mv -f ".deps/vg_messages.Tpo" ".deps/vg_messages.Po"; else rm -f ".deps/vg_messages.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_mylibc.o -MD -MP -MF ".deps/vg_mylibc.Tpo" -c -o vg_mylibc.o vg_mylibc.c; \ then mv -f ".deps/vg_mylibc.Tpo" ".deps/vg_mylibc.Po"; else rm -f ".deps/vg_mylibc.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_needs.o -MD -MP -MF ".deps/vg_needs.Tpo" -c -o vg_needs.o vg_needs.c; \ then mv -f ".deps/vg_needs.Tpo" ".deps/vg_needs.Po"; else rm -f ".deps/vg_needs.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_procselfmaps.o -MD -MP -MF ".deps/vg_procselfmaps.Tpo" -c -o vg_procselfmaps.o vg_procselfmaps.c; \ then mv -f ".deps/vg_procselfmaps.Tpo" ".deps/vg_procselfmaps.Po"; else rm -f ".deps/vg_procselfmaps.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_proxylwp.o -MD -MP -MF ".deps/vg_proxylwp.Tpo" -c -o vg_proxylwp.o vg_proxylwp.c; \ then mv -f ".deps/vg_proxylwp.Tpo" ".deps/vg_proxylwp.Po"; else rm -f ".deps/vg_proxylwp.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_dummy_profile.o -MD -MP -MF ".deps/vg_dummy_profile.Tpo" -c -o vg_dummy_profile.o vg_dummy_profile.c; \ then mv -f ".deps/vg_dummy_profile.Tpo" ".deps/vg_dummy_profile.Po"; else rm -f ".deps/vg_dummy_profile.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_signals.o -MD -MP -MF ".deps/vg_signals.Tpo" -c -o vg_signals.o vg_signals.c; \ then mv -f ".deps/vg_signals.Tpo" ".deps/vg_signals.Po"; else rm -f ".deps/vg_signals.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_symtab2.o -MD -MP -MF ".deps/vg_symtab2.Tpo" -c -o vg_symtab2.o vg_symtab2.c; \ then mv -f ".deps/vg_symtab2.Tpo" ".deps/vg_symtab2.Po"; else rm -f ".deps/vg_symtab2.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_dwarf.o -MD -MP -MF ".deps/vg_dwarf.Tpo" -c -o vg_dwarf.o vg_dwarf.c; \ then mv -f ".deps/vg_dwarf.Tpo" ".deps/vg_dwarf.Po"; else rm -f ".deps/vg_dwarf.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_stabs.o -MD -MP -MF ".deps/vg_stabs.Tpo" -c -o vg_stabs.o vg_stabs.c; \ then mv -f ".deps/vg_stabs.Tpo" ".deps/vg_stabs.Po"; else rm -f ".deps/vg_stabs.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_skiplist.o -MD -MP -MF ".deps/vg_skiplist.Tpo" -c -o vg_skiplist.o vg_skiplist.c; \ then mv -f ".deps/vg_skiplist.Tpo" ".deps/vg_skiplist.Po"; else rm -f ".deps/vg_skiplist.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_symtypes.o -MD -MP -MF ".deps/vg_symtypes.Tpo" -c -o vg_symtypes.o vg_symtypes.c; \ then mv -f ".deps/vg_symtypes.Tpo" ".deps/vg_symtypes.Po"; else rm -f ".deps/vg_symtypes.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_syscalls.o -MD -MP -MF ".deps/vg_syscalls.Tpo" -c -o vg_syscalls.o vg_syscalls.c; \ then mv -f ".deps/vg_syscalls.Tpo" ".deps/vg_syscalls.Po"; else rm -f ".deps/vg_syscalls.Tpo"; exit 1; fi gcc -I./demangle -I../include -I../include -I./x86 -I.. -c vg_syscall.S if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_to_ucode.o -MD -MP -MF ".deps/vg_to_ucode.Tpo" -c -o vg_to_ucode.o vg_to_ucode.c; \ then mv -f ".deps/vg_to_ucode.Tpo" ".deps/vg_to_ucode.Po"; else rm -f ".deps/vg_to_ucode.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_toolint.o -MD -MP -MF ".deps/vg_toolint.Tpo" -c -o vg_toolint.o vg_toolint.c; \ then mv -f ".deps/vg_toolint.Tpo" ".deps/vg_toolint.Po"; else rm -f ".deps/vg_toolint.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_translate.o -MD -MP -MF ".deps/vg_translate.Tpo" -c -o vg_translate.o vg_translate.c; \ then mv -f ".deps/vg_translate.Tpo" ".deps/vg_translate.Po"; else rm -f ".deps/vg_translate.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_transtab.o -MD -MP -MF ".deps/vg_transtab.Tpo" -c -o vg_transtab.o vg_transtab.c; \ then mv -f ".deps/vg_transtab.Tpo" ".deps/vg_transtab.Po"; else rm -f ".deps/vg_transtab.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_ldt.o -MD -MP -MF ".deps/vg_ldt.Tpo" -c -o vg_ldt.o vg_ldt.c; \ then mv -f ".deps/vg_ldt.Tpo" ".deps/vg_ldt.Po"; else rm -f ".deps/vg_ldt.Tpo"; exit 1; fi gcc -I./demangle -I../include -I../include -I./x86 -I.. -c vg_cpuid.S if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -fno-omit-frame-pointer -g -fpic -MT vg_libpthread.o -MD -MP -MF ".deps/vg_libpthread.Tpo" -c -o vg_libpthread.o vg_libpthread.c; \ then mv -f ".deps/vg_libpthread.Tpo" ".deps/vg_libpthread.Po"; else rm -f ".deps/vg_libpthread.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -MT vg_libpthread_unimp.o -MD -MP -MF ".deps/vg_libpthread_unimp.Tpo" -c -o vg_libpthread_unimp.o vg_libpthread_unimp.c; \ then mv -f ".deps/vg_libpthread_unimp.Tpo" ".deps/vg_libpthread_unimp.Po"; else rm -f ".deps/vg_libpthread_unimp.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -fno-omit-frame-pointer -g -fpic -MT vg_intercept.o -MD -MP -MF ".deps/vg_intercept.Tpo" -c -o vg_intercept.o vg_intercept.c; \ then mv -f ".deps/vg_intercept.Tpo" ".deps/vg_intercept.Po"; else rm -f ".deps/vg_intercept.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I../include -I./x86 -DVG_LIBDIR="\"/usr/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -fno-omit-frame-pointer -g -fpic -MT vg_replace_malloc.o -MD -MP -MF ".deps/vg_replace_malloc.Tpo" -c -o vg_replace_malloc.o vg_replace_malloc.c; \ then mv -f ".deps/vg_replace_malloc.Tpo" ".deps/vg_replace_malloc.Po"; else rm -f ".deps/vg_replace_malloc.Tpo"; exit 1; fi vg_syscalls.c: In function `before_ioctl': vg_syscalls.c:2971: error: dereferencing pointer to incomplete type vg_syscalls.c:2973: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:2977: error: dereferencing pointer to incomplete type vg_syscalls.c:2979: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:2983: error: dereferencing pointer to incomplete type vg_syscalls.c:2985: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:2989: error: dereferencing pointer to incomplete type vg_syscalls.c:2991: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:2995: error: dereferencing pointer to incomplete type vg_syscalls.c:2997: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3001: error: dereferencing pointer to incomplete type vg_syscalls.c:3003: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3007: error: dereferencing pointer to incomplete type vg_syscalls.c:3009: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3013: error: dereferencing pointer to incomplete type vg_syscalls.c:3015: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3019: error: dereferencing pointer to incomplete type vg_syscalls.c:3021: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3025: error: dereferencing pointer to incomplete type vg_syscalls.c:3027: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3031: error: dereferencing pointer to incomplete type vg_syscalls.c:3033: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3037: error: dereferencing pointer to incomplete type vg_syscalls.c:3037: error: dereferencing pointer to incomplete type vg_syscalls.c:3040: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3045: error: dereferencing pointer to incomplete type vg_syscalls.c:3047: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3051: error: dereferencing pointer to incomplete type vg_syscalls.c:3053: error: dereferencing pointer to incomplete type vg_syscalls.c:3053: error: dereferencing pointer to incomplete type vg_syscalls.c:3056: error: dereferencing pointer to incomplete type vg_syscalls.c:3056: error: dereferencing pointer to incomplete type vg_syscalls.c:3059: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3071: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c:3077: error: dereferencing pointer to incomplete type vg_syscalls.c:3077: error: dereferencing pointer to incomplete type vg_syscalls.c:3100: error: dereferencing pointer to incomplete type vg_syscalls.c:3102: error: dereferencing pointer to incomplete type vg_syscalls.c:3102: error: dereferencing pointer to incomplete type vg_syscalls.c:3107: error: dereferencing pointer to incomplete type vg_syscalls.c:3109: error: dereferencing pointer to incomplete type vg_syscalls.c:3109: error: dereferencing pointer to incomplete type vg_syscalls.c:3114: error: dereferencing pointer to incomplete type vg_syscalls.c:3116: error: dereferencing pointer to incomplete type vg_syscalls.c:3116: error: dereferencing pointer to incomplete type vg_syscalls.c:3124: error: dereferencing pointer to incomplete type vg_syscalls.c:3126: error: dereferencing pointer to incomplete type vg_syscalls.c:3126: error: dereferencing pointer to incomplete type vg_syscalls.c:3131: error: dereferencing pointer to incomplete type vg_syscalls.c:3133: error: dereferencing pointer to incomplete type vg_syscalls.c:3133: error: dereferencing pointer to incomplete type vg_syscalls.c:3138: error: dereferencing pointer to incomplete type vg_syscalls.c:3140: error: dereferencing pointer to incomplete type vg_syscalls.c:3140: error: dereferencing pointer to incomplete type vg_syscalls.c:3145: error: dereferencing pointer to incomplete type vg_syscalls.c:3147: error: dereferencing pointer to incomplete type vg_syscalls.c:3147: error: dereferencing pointer to incomplete type vg_syscalls.c:3153: error: dereferencing pointer to incomplete type vg_syscalls.c:3155: error: dereferencing pointer to incomplete type vg_syscalls.c:3155: error: dereferencing pointer to incomplete type vg_syscalls.c:3158: error: dereferencing pointer to incomplete type vg_syscalls.c:3158: error: dereferencing pointer to incomplete type vg_syscalls.c:3161: error: dereferencing pointer to incomplete type vg_syscalls.c:3161: error: dereferencing pointer to incomplete type vg_syscalls.c:3179: error: invalid application of `sizeof' to an incomplete type vg_syscalls.c: In function `after_ioctl': vg_syscalls.c:3540: error: dereferencing pointer to incomplete type vg_syscalls.c:3540: error: dereferencing pointer to incomplete type vg_syscalls.c:3546: error: dereferencing pointer to incomplete type vg_syscalls.c:3546: error: dereferencing pointer to incomplete type vg_syscalls.c:3552: error: dereferencing pointer to incomplete type vg_syscalls.c:3552: error: dereferencing pointer to incomplete type vg_syscalls.c:3558: error: dereferencing pointer to incomplete type vg_syscalls.c:3558: error: dereferencing pointer to incomplete type vg_syscalls.c:3567: error: dereferencing pointer to incomplete type vg_syscalls.c:3567: error: dereferencing pointer to incomplete type vg_syscalls.c:3573: error: dereferencing pointer to incomplete type vg_syscalls.c:3573: error: dereferencing pointer to incomplete type vg_syscalls.c:3579: error: dereferencing pointer to incomplete type vg_syscalls.c:3579: error: dereferencing pointer to incomplete type vg_syscalls.c:3586: error: dereferencing pointer to incomplete type vg_syscalls.c:3586: error: dereferencing pointer to incomplete type vg_syscalls.c:3592: error: dereferencing pointer to incomplete type vg_syscalls.c:3592: error: dereferencing pointer to incomplete type vg_syscalls.c:3599: error: dereferencing pointer to incomplete type vg_syscalls.c:3599: error: dereferencing pointer to incomplete type vg_syscalls.c:3605: error: dereferencing pointer to incomplete type vg_syscalls.c:3605: error: dereferencing pointer to incomplete type vg_syscalls.c:3620: error: dereferencing pointer to incomplete type vg_syscalls.c:3621: error: dereferencing pointer to incomplete type vg_syscalls.c:3621: error: dereferencing pointer to incomplete type make[4]: *** [vg_syscalls.o] Error 1 make[4]: *** Waiting for unfinished jobs.... make[4]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2/coregrind' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/valgrind-2.1.2/work/valgrind-2.1.2' make: *** [all] Error 2 !!! ERROR: dev-util/valgrind-2.1.2 failed. !!! Function src_compile, Line 35, Exitcode 2 !!! (no error message) Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.50-r9 (default-x86-2004.0, gcc-3.3.4, glibc-2.3.4.20040619-r0, 2.6.7-gentoo-r11) ================================================================= System uname: 2.6.7-gentoo-r11 i686 Intel(R) Pentium(R) 4 CPU 1.70GHz Gentoo Base System version 1.5.1 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -funroll-loops" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -funroll-loops" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://csociety-ftp.ecn.purdue.edu/pub/gentoo/ ftp://mirror.iawnet.sandia.gov/pub/gentoo/ http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/bmg-main" SYNC="rsync://rsync1.fi.gentoo.org/gentoo-portage" USE="X aalib alsa arts avi berkdb cdr crypt cups dga directfb dvd dvdr encode esd evo fbcon firefox flash foomaticdb gb gcc gdbm ggi gif glib glibc gnome gphoto2 gpm gtk gtk2 gtkhtml imlib innodb ipv6 java jpeg kde lcms ldap libg++ libwww mad mikmod motif mozaccess-builtin mozctl mozilla mozxmlterm mpeg msn mysql ncurses nls odbc oggvorbis opengl oscar oss pam pda pdflib perl plotutils png python qt quicktime readline ruby samba sdl slang slp snmp sock5 spell sse ssl svga tcltk tcpd tetex thunderbird tiff truetype usb wxwindows x86 xface xml xml2 xmms xv yahoo zlib"
I see the same thing. The strange thing is that it works when I comment out src_unpack() in the ebuild!
Don't know why this got assigned to me...
I get the same thing. Dominik's work-around worked for me as well.
what version of linux-headers or linux26-headers you have installed ?
Changing over from linux-headers-2.4.22 to linux26-headers-2.6.7-r3 fixed this for me.. (for general information)
I think the problem is, that those KERNEL_2_6 and KERNEL_2_4 #defines in valgrind configure.in tell us what version of the KERNEL is installed, not what linux HEADERs version we have installed. So with an 2.6.X kernel and 2.4.x linux headers the patch shouldn't be applied (or another patch is needed that does also check in configure.in for kernel HEADER version so we can make decisions upon installed header version)
I have a 2.6 kernel and 2.6.6 headers. Commenting out the patch in src_unpack() got it to compile for me.
[QUOTE] Changing over from linux-headers-2.4.22 to linux26-headers-2.6.7-r3 fixed this for me.. (for general information) [/QUOTE] [QUOTE] I have a 2.6 kernel and 2.6.6 headers. Commenting out the patch in src_unpack() got it to compile for me. [/QUOTE] I had 2.6.7-rX kernel-headers installed, too when I made the patch... So I would conclude after all this it might be a problem introduced from 2.6.6 to 2.6.7 kernel-headers
Switching to linux26-headers-2.6.7-r3 solved this problem for me.
Created attachment 36735 [details] updated valgrind 2.1.2-r1 ebuild ok, i tested this ebuild with all available versions of linux-26 headers and it now compiles fine with each of them. the trick is, it only applies the patch if >=linux26-headers-2.6.7 is installed would be nice if someone else could confirm it fixes the problem
Ran into this problem with emerge digikam. digikam requires kdesdk which requires valgrind. I was originally running on linux-headers. I still had to unmerge linux-headers, and emerge linux26-headers to get valgrind to emerge. *sigh*, calltree is now complaining that vlagrind is too new... last emerge sync was august 2nd 2004. Any questions ?
I'll try to fix the patch this night, in the mean time could the kde team have a look at the kdesdk deps?
I fear it isn't as easy as "fixing the patch" cause the patch is fine, it just should only applied with those special version of linux26-headers installed (like the ebuild I attached above does)
valgrind compiles and installs fine with the attached -r1 ebuild on x86 with: gcc3.3.4 + linux-headers-2.4.22 gcc3.4.1 + linux-headers-2.4.22 gcc3.3.4 + linux26-headers-2.6.7-r4 gcc3.4.1 + linux26-headers-2.6.6-r1
If desirable, the patch can be simplified to this: diff -ruN valgrind-2.1.2/coregrind/vg_unsafe.h valgrind-2.1.2-patched/coregrind/vg_unsafe.h --- valgrind-2.1.2/coregrind/vg_unsafe.h 2004-06-26 10:57:33.000000000 +0200 +++ valgrind-2.1.2-patched/coregrind/vg_unsafe.h 2004-08-07 17:54:55.154916232 +0200 @@ -47,7 +47,6 @@ #include <sys/socket.h> /* for struct msghdr */ #include <linux/sockios.h>/* for SIOCOUTQ */ #include <sys/un.h> /* for sockaddr_un */ -#include <net/if.h> /* for struct ifreq et al */ #include <net/if_arp.h> /* for struct arpreq */ #include <net/route.h> /* for struct rtentry */ #ifdef KERNEL_2_6
this is what my first initial version of the patch did (http://bugs.gentoo.org/show_bug.cgi?id=57760) but I think you are correct, due to the fact that the current ebuild only applies the patch for some special header versions, for which your patch would be sufficent... the patch that made it into CVS was ment to differ between 2.4 and 2.6 kernels (but it should have differed between 2.4 and 2.6 kernel headers, or to be more exact like I found out during further investigation it should differ between <2.6.7 and >=2.6.7 kernel headers. That's what the latest ebuild does - only applying the patch if really needed so it won't break with earlier kernel headers.)
Committed the fix, when the 2.6.6 headers will disappear I'll remove it back.
> Committed the fix, when the 2.6.6 headers will disappear I'll remove it back. no... this is not the correct approach. this version of the ebuild is needed for everyone with a 2.6 kernel and having either linux-headers or < linux26-headers-2.6.7. (so the patch is applied via the ebuild only for people with >= linux26-headers-2.6.7) Not sure what will happens when there will be 2.6.8 headers... will have to wait if they will work or break things...