On Tue, Jun 17, 2014 at 07:38:16PM +0100, Emil Velikov wrote: > Hi all, > > As a follow up to the static/shared pipe-drivers series here is the final > series (if anyone is interested I may take a look at egl + opencl) of > refactoring the gallium dri targets into a single library/provider. >
Hi Emil, One common problem I run into when using the pipe drivers is if there is an undefined symbol in the pipe_*.so then it will silently fail to load, and with OpenCL for example it won't report any devices which can be confusing for users. I would recommend adding some error handling to util_dlopen, so that it prints an error message when it fails to load a shared object. Other than that, it's hard to review a series like this, but I'll give it an: Acked-by: Tom Stellard <thomas.stell...@amd.com> Since I like the general approach. -Tom > In a nutshell: > - Convert one target per patch. > - Merge the drm and sw backends of our dri state-tracker. > - Adds __driDriverGetExtensions_$drivername symbol for each driver. > - Megadrivers. > - *** > - Profit. > > Things works like a charm for nouveau and swrast, and testing on other > platforms is greatly appreciated. > > The complete series can be found in the static-or-shared-pipe-drivers-v2 > branch at my github repo. > > I would like to get this reviewed/pushed over the next month, although > that depends on the number of bugs that come up with the previous batch. > > As always comments, suggestions and flame is welcome. > > Cheers, > Emil > > Emil Velikov (23): > targets/dri-swrast: use drm aware dricommon when building more than > swrast > st/dri: Allow separate dri-targets > st/dri/drm: Add a second libdridrm library > targets/dri-nouveau: Convert to static/shared pipe-drivers > targets/(r300|r600|radeonsi)/dri: Convert to static/shared pipe-drivers > targets/dri-freedreno: Convert to static/shared pipe-drivers > targets/dri-i915: Convert to static/shared pipe-drivers > targets/dri-ilo: Convert to static/shared pipe-driver > targets/dri-vmwgfx: Convert to static/shared pipe-drivers > st/dri: Remove the old libdridrm library > targets/dri: Add __driDriverGetExtensions_nouveau symbol > targets/dri: Add __driDriverGetExtensions_(r300|r600|radeonsi) symbols > targets/dri: Add __driDriverGetExtensions_freedreno symbol > targets/dri: Add __driDriverGetExtensions_i915 symbol > targets/dri: Add __driDriverGetExtensions_i965 symbol > targets/dri: Add __driDriverGetExtensions_vmwgfx > targets/dri: update scons build to handle > __driDriverGetExtensions_vmwgfx > targets/dri: cleanup conversion leftovers > st/dri/drm: remove __driDriverExtensions and driDriverAPI > scons: build and use a single dri_common library > targets/dri-swrast: convert to gallium megadrivers :) > st/dri: merge dri/drm and dri/sw backends > targets/dri-swrast: Convert to static/shared pipe-driver > > 61 files changed, 536 insertions(+), 1375 deletions(-) > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev