Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 65758 - Kdrive compile dies at vesa.c: In function `toshibaDPMS'
Summary: Kdrive compile dies at vesa.c: In function `toshibaDPMS'
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High critical (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-09-28 20:07 UTC by Evan Langlois
Modified: 2004-11-26 10:50 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Evan Langlois 2004-09-28 20:07:26 UTC
These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild  N    ] x11-base/kdrive-4.3.0-r5  -cjk -debug +fbdev +freetype -fs -ipv6 +speedo +truetype +type1 -xinerama +xv  0 kB

Total size of downloads: 0 kB

gcc (GCC) 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Reproducible: Always
Steps to Reproduce:
1. emerge kdrive

Actual Results:  
Compile dies with ...
rm -f vesa.o
gcc -m32 -c -O3 -march=k6-2 -pipe    -I. -I..
-I../../../../../exports/include/X11 -I../../../../../include/fonts       
-I../../../fb -I../../../mi -I../../../Xext     -I../../../miext/shadow
-I../../../miext/layer          -I../../../include -I../../../os         
-I../../../../../include/extensions -I../../../../../exports/include/X11
-I../../../render -I../../../randr  -I../../../../..
-I../../../../../exports/include
-I/var/tmp/portage/kdrive-4.3.0-r5/work/xc/usr/X11R6/include  -Dlinux -D__i386__
-D_POSIX_C_SOURCE=199309L                           -D_POSIX_SOURCE
-D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE          
                  -D_GNU_SOURCE                           -DSHAPE        
-DTOGCUP                        -DRENDER -DRANDR -DKDRIVESERVER -DGCCUSESGAS
-DDDXOSINIT -DSMART_SCHEDULE -DNOFONTSERVERACCESS   -DPIXPRIV -DNDEBUG 
-DFUNCPROTO=15 -DNARROWPROTO      vesa.c
vesa.c: In function `toshibaDPMS':
vesa.c:1544: error: subscripted value is neither array nor pointer
make[5]: *** [vesa.o] Error 1
make[5]: Leaving directory
`/var/tmp/portage/kdrive-4.3.0-r5/work/xc/programs/Xserver/hw/kdrive/vesa'
make[4]: *** [hw/kdrive/vesa] Error 2
make[4]: Leaving directory
`/var/tmp/portage/kdrive-4.3.0-r5/work/xc/programs/Xserver'


Expected Results:  
I also tried to compile via CVS from the instructions on
http://www.freedesktop.org/Software/XserverInstallGuide and  the compiling of
Xfont dies because a file isn't found.  Doesn't look like a standard include to
me, so I think its missing.    The missing file is 11/extensions/fontcacheP.h. 
I'm thinking something previous should have installed it.


Portage 2.0.50-r10 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.3.20040420-r1,
2.6.8-gentoo-r3)
=================================================================
System uname: 2.6.8-gentoo-r3 i586 AMD-K6(tm) 3D processor
Gentoo Base System version 1.4.16
distcc 2.13 i386-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[disabled]ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=k6-2 -fomit-frame-pointeri -pipe"
CHOST="i386-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=k6-2 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://gentoo.osuosl.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow DirectFB alsa apm avi berkdb bitmap-fonts crypt cups directfb encode
esd fbdev flash foomaticdb freetype gdbm gif gpm gtk2 imlib jpeg libg++ libwww
mad matrox mikmod mmap mmx motif mpeg nas ncurses nls nptl oggvorbis opengl oss
pam pdflib perl pic png python quicktime readline sdl slang speedo spell ssl
svga tcpd tiff truetype type1 x86 xml2 xmms xprint xv zlib"
Comment 1 Donnie Berkholz (RETIRED) gentoo-dev 2004-09-29 08:16:08 UTC
You're really better off installing from CVS. Our kdrive is quite outdated. Make sure you've got all the xlibs.

Cyfred, can you check this out? It's probably fixed in kdrive cvs.
Comment 2 Graeme Humphries 2004-09-29 11:07:29 UTC
Erm, I posted something to my rhgb bug about this (http://bugs.gentoo.org/show_bug.cgi?id=43539#c6), but I didn't see you weren't CCed until now. In any case, yeah, kdrive emerges fine for me, so you may want to take a look at the emerge info output I have there.
Comment 3 Evan Langlois 2004-09-29 12:55:04 UTC
Well, I haven't looked into vesa.c to see what the code looks like.  Maybe its a GCC problem?

I did get the CVS version to build, but I ended up stealing some files from /var/tmp/portage to do it.  The kdrive sources from the ebuild had the missing files to make it work.  I also got some patches from the Xorg team, and learned to completely ignore the script posted on freedesktop.org.

Now that I have all the pieces.  Can someone point me to a Ebuild creation howto for building packages from CVS instead of tarballs?  Or should ther kdrive CVS just be snapshotted?

BTW - I'm using the matrox driver and while the colors are sometimes off (not sure why yet), its BLAZINGLY fast.  If it supported higher resolutions I'd try it on my main desktop.
Comment 4 Donnie Berkholz (RETIRED) gentoo-dev 2004-09-29 14:54:20 UTC
I'm sort of thinking of adding a kdrive snapshot sometime reasonably soon, along with the required xlibs (which will block virtual/x11, at least til we get something more figured out, and will remain at least ~arch, maybe p.mask). That'll allow us to start transitioning to the modular structure.

Snapshots are preferable to live CVS ebuilds, because they have reproduceable problems. Every emerge is using the same sources.

I've got a bunch of (old, now) ebuilds at http://dev.gentoo.org/~spyderous/overlay-freedesktop/ for this stuff. Some are broken, some work, etc. The last tarball should work fine. If you feel like updating them, let me know via email.
Comment 5 Evan Langlois 2004-09-29 15:13:52 UTC
By modular structure, do you mean seperate entries and dependencies for each piece?  Like libICE, libXM, libXtst ?
Comment 6 Donnie Berkholz (RETIRED) gentoo-dev 2004-09-29 15:29:31 UTC
You'd know if you looked at the URL I gave you with ebuilds. =P
Comment 7 Andrew Bevitt 2004-09-30 19:20:44 UTC
I think the original error might actually have something to do with this
> gcc -m32 -c -O3 -march=k6-2 -pipe    

Im preety sure k6-2 is the culprit, try changing to -march=i586 just for this build.
Comment 8 Evan Langlois 2004-10-08 11:17:31 UTC
I really doubt its K6-2 thats the problem.  Those old k6-2 bugs were a couple GCC revisions back, and I think it was an optimization bug, not it saying there's a problem with subscripting.

Anyway, the new CVS works fine.  The only issue is that Xmga shows wrong colors on icons in true color mode (but only icons), and you can't use Xinerama and DRI at the same time.  I only want Xinerama for synergy, and don't need DRI at all (the Matrox does better at scaling video than 3D, and the TV is the only video I'll ever scale on this box).

Spyderous, could you grab the CVS overlay and distfiles and look them over?  Once comitted, we can probably close this bug - changed the ebuild to just say "please emerge xserver-freedesktop" or something.  

I've tested Xmga, Xfbdev, and Xvesa.  I may be testing Xati and Xnvidia this weeked.  The others I can't test without yanking video cards, so someone else may have to do that.  All the xlibs have been tested with no other X on the system, and they've been used on a P4 system which seemed to need this version (gxine complained about missing Xtst and some functions missing from xrender, so I installed those and their deps from this overlay on an Xorg 6.8.0 system!)

I've put it up on http://CoolRunningConcepts.com/kdrive/

I may have a couple extra distfiles that I didn't do ebuilds for, but I kept them in case I find a program that wants them ... so I can make an ebuild real quick without worrying about changes made since I checked it all out of CVS.

-- Evan
aka Taro
Comment 9 Donnie Berkholz (RETIRED) gentoo-dev 2004-10-08 11:39:36 UTC
I'm a little confused about what those tarballs are -- is that ebuild plus filesdir plus source? Where are the ebuilds?
Comment 10 Evan Langlois 2004-10-08 11:44:41 UTC
Oh sorry,

The ebuilds are in overlay-freedesktop.tar.bz2.  Its the complete overlay just tarballed up to make sure I got it all.  I took your tree and added/modified it cause I wanted to make sure it was all there and ready to use.
Comment 11 Andrew Bevitt 2004-11-25 15:09:52 UTC
Frankly I really dont see the point fixing this for the old 4.3.0 kdrive build stuff...

A snapshot is probably the best bet and go from there, but if xorg is totally modularised, is kdrive really needed?
Comment 12 Andrew Bevitt 2004-11-25 16:39:48 UTC
Fixed in cvs.

Fixed by disabling toshiba dpms support, dirty, but about all that can be done, kernel headers have changed and kdrive didnt.
Comment 13 Evan Langlois 2004-11-26 10:50:13 UTC
In regards to "is kdrive needed" - I think its still better for embedded systems and I think on some systems it will perform better, and not just due to a lower memory footprint.  Keith's KAA seems to outperform XAA (see xorg mailing list archive for why).  The difference between the two is even greater when you turn on Composite (kills my Radeon under Xorg, but doesn't slow down kdrive at all).