====emerge settings==== x11-base/xorg-server-1.0.99.903 USE="dmx dri ipv6 kdrive nptl sdl xorg xprint -3dfx% -debug -minimal" INPUT_DEVICES="evdev% keyboard% mouse% -acecad% -aiptek% -calcomp% -citron% -digitaledge% -dmc% -dynapro% -elo2300% -elographics% -fpit% -hyperpen% -jamstudio% -joystick% -magellan% -magictouch% -microtouch% -mutouch% -palmax% -penmount% -spaceorb% -summa% -synaptics% -tek4957% -ur98% -vmmouse% -void% -wacom%" VIDEO_CARDS="fbdev% nv nvidia% vesa% vga% -apm% -ark% -chips -cirrus% -cyrix% -dummy% -epson -fglrx% -glint -i128% -i740% -i810 -imstt% -mach64 -mga -neomagic -nsc% -r128 -radeon -rendition% -s3% -s3virge% -savage% -siliconmotion -sis% -sisusb% -tdfx% -tga% -trident% -tseng% -v4l% -via -vmware% -voodoo%" ====emerge --info==== Portage 2.1_pre10-r5 (default-linux/x86/2005.1, gcc-4.1.0-beta20060210, glibc-2.4-r2, 2.6.16-gentoo-r6kz i686) ================================================================= System uname: 2.6.16-gentoo-r6kz i686 AMD Athlon(TM) XP 2000+ Gentoo Base System version 1.12.0_pre19 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] dev-lang/python: 2.3.5-r2, 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r1 dev-util/confcache: 0.4.2 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.16.1-r2 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r5 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O3 -march=i686 -pipe -mmmx -m3dnow -fomit-frame-pointer -finline-functions-called-once -ffast-math" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/openjms/config /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/local/kdeextra/share/config /usr/local/kdeextra/shutdown /usr/share/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-O3 -march=i686 -pipe -mmmx -m3dnow -fomit-frame-pointer -finline-functions-called-once -ffast-math" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig buildpkg ccache confcache cvs distlocks metadata-transfer parallel-fetch sandbox sfperms strict usepkg userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp.planetmirror.com/pub/gentoo ftp://mirror.isp.net.au/pub/gentoo ftp://distfiles.gentoo.org/ ftp://ftp.wh2i.tu-dresden.de/pub/mirrors/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo/ ftp://ftp6.uni-muenster.de/pub/linux/distributions/gentoo/ http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.rz.tu-bs.de/pub/mirror/ftp.gentoo.org/gentoo-distfiles/ ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo/" LANG="C" LC_ALL="C" LDFLAGS="-Wl,-O1,-z,now" MAKEOPTS="-j6" 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'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage /usr/src/gnome/gnome-experimental /usr/src/musicbrainz-overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" << USEFLAGS snipped as author belives global useflags situationally useless >> Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_RSYNC_EXTRA_OPTS ====Compile Fault==== * Running automake --add-missing --copy --foreign ... [ !! ] * Failed Running automake ! * * Include in your bugreport the contents of: * * /var/tmp/portage/xorg-server-1.0.99.903/temp/automake-24443.out !!! ERROR: x11-base/xorg-server-1.0.99.903 failed. Call stack: ebuild.sh, line 1527: Called dyn_unpack ebuild.sh, line 702: Called src_unpack xorg-server-1.0.99.903.ebuild, line 565: Called x-modular_reconf_source x-modular.eclass, line 247: Called eautoreconf autotools.eclass, line 68: Called eautomake autotools.eclass, line 171: Called autotools_run_tool 'automake' '--add-missing' '--copy' '--foreign' autotools.eclass, line 198: Called die !!! Failed Running automake ! !!! If you need support, post the topmost build error, and the call stack if relevant. ====automake.out==== ***** automake ***** hw/kdrive/Makefile.am:27: required directory hw/kdrive/si00 does not exist ====Experimentation==== experimentation of making that directory exist as an empty dir permits automake to complete. ( ongoing implications of this not tested )
Attach the resulting hw/kdrive/Makefile.am file, please, and reopen.
Created attachment 86771 [details] hw/kdrive/Makefile.am Im going out on a limb here, but im suggesting that the reason for it looking for a "si00" when none exists, maybe due to a rule that kills out as such. delete s3 delete sis300 so when the word 'sis300' is seen the first time, it becomes "si00" due to the "s3" rule, so when the "sis300" rule comes along, theres no match. That sound too illogical? * Removing unused kdrive drivers ... <snip> * ati ... [ ok ] * rendition ... [ ok ] * s3 ... [ ok ] * s3virge ... [ ok ] * savage ... [ ok ] * smi ... [ ok ] * sis ... [ ok ] * sisusb ... [ ok ] * sunbw2 ... [ ok ] * suncg14 ... [ ok ] * suncg3 ... <snip>
attachement submitted as requested. Reopening
Actually, that sounds perfectly logical. Do you have a suggested fix for it? Here is the problematic code in the xorg-server ebuild. sed -i \ -e "s:${real_card}::g" \ ${S}/hw/kdrive/Makefile.am
I had a more complex solution, but this solution came after it, and seemed to be more simple and elegant than making it do a non-match on the "s3" driver which is missing in xorg-server anyway. Basically put padding rules into the regexp that should work for all instances. as long as a word has nonword (ie: space/end line) on either end of it it should match. ( but it wont match on subwords ) Did my best to make sure nothing could potentially have harmfull side-effects in later updates. it seems to have the desired effect on makefile.am, removing the bugging entries. Actually testing to see if it compiles as we speak ( tho if it doesnt im guessing its not the same bug ;) ) == working code == if use kdrive; then einfo "Removing unused kdrive drivers ..." for card in ${IUSE_VIDEO_CARDS}; do real_card=${card#video_cards_} # Differences between VIDEO_CARDS name and kdrive server name real_card=${real_card/glint/pm2} real_card=${real_card/radeon/ati} real_card=${real_card/nv/nvidia} real_card=${real_card/siliconmoition/smi} # s3 PreDeletion Fix ( % means match end of string only ) real_card=${real_card/%sis/sis300} if ! use ${card}; then ebegin " ${real_card}" sed -i \ -e "s:\b${real_card}\b: :g" \ ${S}/hw/kdrive/Makefile.am \ || die "sed of ${real_card} failed" eend fi done
Yeah, I'd rather not add that extra special case for the sis300. Like just the \b on either side better -- does it work w/ just those?
(In reply to comment #6) > Yeah, I'd rather not add that extra special case for the sis300. Like just the > \b on either side better -- does it work w/ just those? > yep, the \b's just disable the fuzzy matches. but the sis rule is there if you want it. the % was a lifesaver, handy trick to remember. it was either that or rename sisusb temporarily while we renamed sis and then rename sisusb back again.. yuck... or have a call that did an echo | sed routine every cycle due to bash'es substituion not completley supporting regex ( also yuck ).
Ah, true, I always forget about sisusb. Committed your fixes, thanks!