Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Jun 1999 06:18:19 -0500
From:      Fred Jacobs <lb@enteract.com>
To:        FreeBSD-ports@FreeBSD.org
Subject:   Potential port of XF86_SVGA + riva_glx
Message-ID:  <19990608061819.B177@mail.31337.com>

next in thread | raw e-mail | index | archive | help
I have successfully built the software required to utilize the nvidia
riva TNT chipset of 3d graphics hardware for hardware-accelerated mesa3d/GLX,
in X.  (Whew, that's a mouth full)  nVidia posted recently documentation on
making this work, and after various hacking and slashing, I have it up and
running.  The build procedure, however, was rather unpleasant.  Ideally this
sort of thing would go into ports, but I haven't submitted a port myself
asofyet.  Therefore I'd like to ask what direction to go in now, and to share
what information I have in case another individual might wish to work on such
a port.

The full installation procedure requires a build of the XF86_SVGA server,
(version 3.3.3.1 is assumed by the patch, I build XttXF86srv_SVGA with it)
after having applied a patch obtained from ftp.nvidia.com.  It also requires
(or at least suggests use of) a mesa3d performance patch, also available
from nvidia.  Lastly, it requires a rather behemoth build of a glx library
which is available in source form from nvidia.  The glx library has several
Imakefiles, all of which assume the file "Config" in the top level of the
build directory contains the location of both the Mesa-3.0 source and the
XFree86 source's xc/ directory.  (I just pointed these to my not-yet-cleaned
ports work directories).  One other file a bit deeper in the build of the
glx library has trouble building for its -I lines do not by default include
the location of X.h.

Now it gets a little bit worse.  The distribution of the library and the FAQ
at nvidia both state that the user is to "copy /usr/X11R6/libGL.so.1.0 on top
of the libMesaGL.so.3.0"  -- and unpleasant procedure which in the end appears
to work.  The distribution contains a broken script which I imagine doesn't
work with any shell on earth, which attempts to locate /etc/XF86Config, to
add a Module section, which then loads the installed glx.so module.  Once the
files are installed over their previous Mesa3d counterparts (I backed those
up, things run but... software written for Mesa3d likes to link against the
real Mesa3d libraries, and then run against these weird ones...), it is
possible to actually start the server and run the GL demos in xlock, most
of the demos which came with Mesa, or other Mesa3d/GL code.  

The entirety of the FAQ from nvidia, with pointers to all of these source
tarballs, is available online at the following location:
http://www.nvidia.com/Marketing/Products/Pages.nsf/pages/linuxfaq
... this is worth installing for owners of cards with a TNT chipset.
Hardware-accelerated GL, even in this preliminary version, is quite nice.
(XFree86 4.0 will support this more directly and officially, when it is
released)

My apologies for the verbosity of my message and the arguable bogosity of my
install description.  If anyone has any further questions or suggestions, I
am listening and hope to help.

Fred


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990608061819.B177>