[haiku-development] Haiku Mesa3D (A roadmap to ponies and unicorns)
- From: Alexander von Gluck <kallisti5@xxxxxxxxxxx>
- To: <haiku-development@xxxxxxxxxxxxx>
- Date: Wed, 21 Dec 2011 13:10:37 -0600
Good afternoon!
I think I've gotten this Mesa thing tacked down.
Current Mesa / OpenGL setup on Haiku:
* Heavily customized / old version of Mesa in src/libs/mesa (Jamfile
converted!)
* The build process compiles the Mesa libraries
* The build process builds the opengl kit which produces libGL.so
* The opengl kit takes the compiled mesa libraries in src/libs/mesa
and links them into libGL.so
* The opengl kit takes the opengl kit wrappers (which seem *very*
similar to the Mesa BeOS "drivers")
and also slaps them into libGL.so
* The opengl kit also takes the Mesa GLU shared libraries and links
them into libGL.so
* The process above results in software rendering of OpenGL graphics.
Proposed new setup (rough idea)
* Stock Mesa, pulled from Mesa project.
* We build the stock Mesa, and form OptionalPackages from them for gcc2
(build untested!) and gcc4
* The stock Mesa optional packages are pretty much just the source
tree + binaries within to keep
things simple. (for now)
* We point the opengl kit to the pre-built mesa sources from the (now
extracted somewhere temporary)
Mesa optional package.
* We get libGL.so just as above, except without relying on our own fork
of Mesa.
Now you may be wondering, why should I care?
* We get the latest and greatest Mesa without much work
* Upstream Mesa shouldn't care as the Haiku build patches aren't large
and don't give them grief.
* Several Gallium3D drivers (within the Mesa source tree /project
since 2009) compile *right* now!
(including softpipe, Radeon R300-R600, Intel i915)
* Keep in mind compile != work... plus there is no direct hardware
communication yet.
For those interested, my initial Mesa patch is here.
http://lists.freedesktop.org/archives/mesa-dev/2011-December/016300.html
Feedback is awesome as always.
-- Alex
Other related posts: