Firstly, udev ignores MAKEOPTS by using make instead of emake. The ebuild says "Do not work with emake" but does not explain why. If parallel builds fail, the ebuild should use emake -j1, not plain make. If there's some other reason, it should probably be mentioned. There's nothing to be found in bugzilla, there's nothing to be found in CVS history (it's been in the ebuild right from the start, from udev-0.2). Secondly, udev ignores CFLAGS and LDFLAGS. After changing the make call to emake, and building with MAKEOPTS=V=yes, here's the output: (will attach due to size) $ emerge --info Portage 2.1.2.4 (default-linux/amd64/2006.1/no-multilib, gcc-4.1.2, glibc-2.5-r1, 2.6.20-gentoo-r4 x86_64) ================================================================= System uname: 2.6.20-gentoo-r4 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ Gentoo Base System release 1.12.10 Timestamp of tree: Tue, 24 Apr 2007 17:29:01 +0000 dev-java/java-config: 1.3.7, 2.0.31-r7 dev-lang/python: 2.4.4 dev-python/pycrypto: 2.0.1-r5 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.16 sys-devel/libtool: 1.5.23b virtual/os-headers: 2.6.20-r2 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=athlon64 -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps=y" FEATURES="assume-digests collision-protect cvs distlocks metadata-transfer multilib-strict notitles parallel-fetch sandbox sfperms sign strict test" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="en_GB.UTF-8" LDFLAGS="-Xlinker --as-needed" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/cvs/gentoo-x86 /etc/portage/overlay /etc/portage/overlay/java-overlay /etc/portage/overlay/gcj-overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X a52 akode alsa amd64 bidi bindist bitmap-fonts bzip2 cjk cli cracklib crypt dri dvd dvdnav dvdread filepicker flac gcj gif gmp gtk iconv immqt ipv6 isdnlog jpeg kde kdeenablefinal kdehiddenvisibility libg++ mbox midi mozdevelop ncurses nls no-old-linux nocxx nptl nptlonly ogg opengl ppds pppd qt3 readline reflection rtc session spl ssl tcpd test threads truetype truetype-fonts type1-fonts unicode vorbis xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vesa" Unset: CTARGET, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 117160 [details] udev-build.log Build log
Originally, in the original udev build system, emake would not work. If this is now changed, I have no objection to changing the ebuild to use emake if you think it would really matter.
For me it works with emake, and also with Makefile changed from overwriting CFLAGS/LDFLAGS, to just attaching new flags there. I will create udev-109-r1 just with these changes to be able to trace any problems with that.
Fixed by adding udev-109-r1 to the tree.
This is fixed in 198 for sure.