[Mesa-dev] [PATCH 0/23] megadriver/pipe-loader-to-all

Emil Velikov emil.l.velikov at gmail.com
Sun May 18 00:07:22 PDT 2014


Hi all

Update of the megadriver/pipe-loader-to-all series.

What & Why:
Allow one to link every driver selected at configure with the target
library, or even to allow them to use shared pipe-driver.

Less duplication - rather than shipping three identical radeon winsys,
8 copies of the dri ST, 3x the OMX ST.... you get the idea :)

For those concerned that the driver will be be present multiple times,
in the static library they can opt in for shared pipe-drivers.
Note that those bare unstable interface.

Highlights & Notes:
 * Most gallium targets are changed with a few exceptions - egl static only,
opencl shared, and dri static/shared for drm drivers.
 * OMX target does not build (pending Christian's feedback).
 * By default we're building static libraries. Add configure option?
 * Shared ones do not work with vdpau/gl interop.

Next:
Janitorial:
 * Update the release notes.
 * Cleanup configure target names.
Megaradeon
 * As per Marek's idea, push some of the cruft to the radeon winsys layer.
DRI
 * Create a single libdricommon (similar to classic dri).
 * Driver specific __driGetDriverExtension*.
 * Merge libdridrm + libdrisw.
 * Blown classic dri style megadriver.
EGL/CLOVER
 * Cleanup sw winsys handling and convert egl/clover.
Symlinks
 * Cleanup the link creation (think about other platforms) and compact/unify.


The changes can be fetches are available in the pipe-loader-to-all-or-static
branch over at https://github.com/evelikov/Mesa/

Build + runtime tested on my rusty old nv96 using nouveau, although I would
appreciate additional testing :)

 * Build - automake, android and scons should just work.
 * Runtime - there should be no regressions (barring the vdpau/gl interop
note above).

As usual thoughts, comments and suggestions are greatly appreciated.

Cheers
Emil

P.S. Did I mention that there is ~770loc savings as well :)



More information about the mesa-dev mailing list