Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 135386 - xf86-video-i810-1.6.0 fails to build
Summary: xf86-video-i810-1.6.0 fails to build
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: x86 Linux
: High major
Assignee: Gentoo X packagers
URL: https://bugs.freedesktop.org/show_bug...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-03 06:43 UTC by slyzer
Modified: 2006-06-03 09:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
1.6.0-I810shadowSymbols.patch (1.6.0-I810shadowSymbols.patch,466 bytes, patch)
2006-06-03 06:44 UTC, slyzer
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description slyzer 2006-06-03 06:43:32 UTC
emerge --info
Portage 2.1_rc4 (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16.18 i686)
=================================================================
System uname: 2.6.16.18 i686 Pentium III (Coppermine)
Gentoo Base System version 1.12.0
dev-lang/python:     2.4.2
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
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-r1
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/gconf /etc/initng/daemon /etc/initng/net /etc/initng/system /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium3 -pipe -fomit-frame-pointer"
DISTDIR="/mnt/distfiles"
FEATURES="autoconfig distlocks fixpackages metadata-transfer nodoc parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo"
LC_ALL=""
MAKEOPTS="-j2"
PKGDIR="/mnt/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="/mnt/overlay/personal /mnt/overlay/initng-portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X alsa crypt cups gif jpeg mmx ncurses nptl pam png readline sse ssl unicode x86 xorg zlib elibc_glibc initng_plugins_also initng_plugins_bash_launcher initng_plugins_chdir initng_plugins_chroot initng_plugins_conflict initng_plugins_cpout initng_plugins_critical initng_plugins_cron initng_plugins_daemon initng_plugins_dev initng_plugins_dllaunch initng_plugins_envparser initng_plugins_find initng_plugins_fstat initng_plugins_history initng_plugins_idleprobe initng_plugins_initctl initng_plugins_interactive initng_plugins_iparser initng_plugins_last initng_plugins_limit initng_plugins_logfile initng_plugins_netprobe initng_plugins_ngc4 initng_plugins_pause initng_plugins_pidfile initng_plugins_reload initng_plugins_renice initng_plugins_rlparser initng_plugins_simple_launcher initng_plugins_stcmd initng_plugins_stdout initng_plugins_suid initng_plugins_syncron initng_plugins_syslog initng_plugins_unneeded initng_plugins_provide input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_cards_i810"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS

Emerging xf86-video-i810-1.6.0 fails with this error:

...

if /bin/sh ../libtool --tag=CC --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I..    -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg    -DI830_XV -O2 -march=pentium3 -pipe -fomit-frame-pointer -MT i830_io.lo -MD -MP -MF ".deps/i830_io.Tpo" -c -o i830_io.lo i830_io.c; \
then mv -f ".deps/i830_io.Tpo" ".deps/i830_io.Plo"; else rm -f ".deps/i830_io.Tpo"; exit 1; fi
 i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg -DI830_XV -O2 -march=pentium3 -pipe -fomit-frame-pointer -MT i830_driver.lo -MD -MP -MF .deps/i830_driver.Tpo -c i830_driver.c  -fPIC -DPIC -o .libs/i830_driver.o
i830_driver.c: In function `I830BIOSPreInit':
i830_driver.c:3544: error: `I810shadowSymbols' undeclared (first use in this function)
i830_driver.c:3544: error: (Each undeclared identifier is reported only once
i830_driver.c:3544: error: for each function it appears in.)
make[3]: *** [i830_driver.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
 i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg -DI830_XV -O2 -march=pentium3 -pipe -fomit-frame-pointer -MT i830_io.lo -MD -MP -MF .deps/i830_io.Tpo -c i830_io.c  -fPIC -DPIC -o .libs/i830_io.o
make[3]: Leaving directory `/var/tmp/portage/xf86-video-i810-1.6.0/work/xf86-video-i810-1.6.0/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/xf86-video-i810-1.6.0/work/xf86-video-i810-1.6.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xf86-video-i810-1.6.0/work/xf86-video-i810-1.6.0'
make: *** [all] Error 2

!!! ERROR: x11-drivers/xf86-video-i810-1.6.0 failed.
Call stack:
  ebuild.sh, line 1539:   Called dyn_compile
  ebuild.sh, line 939:   Called src_compile
  ebuild.sh, line 1248:   Called x-modular_src_compile
  x-modular.eclass, line 317:   Called x-modular_src_make
  x-modular.eclass, line 312:   Called die

!!! emake failed
!!! If you need support, post the topmost build error, and the call stack if relevant.


This bug is reproducable, simply unpack xf86-video-i810-1.6.0.tar.bz2, run ./configure and make:

...
if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I..    -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg    -DI830_XV -g -O2 -MT i830_driver.lo -MD -MP -MF ".deps/i830_driver.Tpo" -c -o i830_driver.lo i830_driver.c; \
then mv -f ".deps/i830_driver.Tpo" ".deps/i830_driver.Plo"; else rm -f ".deps/i830_driver.Tpo"; exit 1; fi
 gcc -DHAVE_CONFIG_H -I. -I. -I.. -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg -DI830_XV -g -O2 -MT i830_driver.lo -MD -MP -MF .deps/i830_driver.Tpo -c i830_driver.c  -fPIC -DPIC -o .libs/i830_driver.o
i830_driver.c: In function `I830BIOSPreInit':
i830_driver.c:3544: error: `I810shadowSymbols' undeclared (first use in this function)
i830_driver.c:3544: error: (Each undeclared identifier is reported only once
i830_driver.c:3544: error: for each function it appears in.)
make[3]: *** [i830_driver.lo] Error 1
make[3]: Leaving directory `/tmp/xf86-video-i810-1.6.0/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/xf86-video-i810-1.6.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/xf86-video-i810-1.6.0'
make: *** [all] Error 2

To fix it (dirty fix):

--- xf86-video-i810-1.6.0/src/i830_driver.c     2006-04-07 23:59:40.000000000 +0200
+++ xf86-video-i810-1.6.0/src/i830_driver.c     2006-06-03 15:13:02.520290000 +0200
@@ -2082,6 +2082,15 @@
    unsigned int ver;
    char v[5];
 
+   const char *I810shadowSymbols[] = {
+       "shadowInit",
+       "shadowSetup",
+       "shadowAdd",
+       "shadowRemove",
+       "shadowUpdateRotatePacked",
+       NULL
+   };
+
    if (pScrn->numEntities != 1)
       return FALSE;
Comment 1 slyzer 2006-06-03 06:44:52 UTC
Created attachment 88260 [details, diff]
1.6.0-I810shadowSymbols.patch
Comment 2 Joshua Baergen (RETIRED) gentoo-dev 2006-06-03 08:55:57 UTC
Ah, this is actually a bug with compiling w/o DRI.  Is it your intention to install -dri?  If not, adding dri to your use-flags will remedy this situation.

I'll attach a patch below that should fix this in a simpler way.
Comment 3 Joshua Baergen (RETIRED) gentoo-dev 2006-06-03 09:05:30 UTC
Actually, to avoid duplication, just see the patch at the upstream URL.