mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
targets/dri-swrast: convert to gallium megadrivers :)
Export the approapriate new symbol, and keep backwards compat via the megadriver_stub helper library. Our next step would be to unify dri/drm and dri/sw, leading to a complete megadrivers solution, and having a single library that provides dri across all targets. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
This commit is contained in:
parent
dab5d16f0e
commit
f6483aa694
6 changed files with 25 additions and 2 deletions
|
|
@ -28,6 +28,8 @@ GALLIUM_DRIVER_CXXFLAGS = \
|
|||
|
||||
GALLIUM_DRI_CFLAGS = \
|
||||
-I$(top_srcdir)/include \
|
||||
-I$(top_srcdir)/src/gallium/state_trackers/dri/common \
|
||||
-I$(top_srcdir)/src/mesa/drivers/dri/common \
|
||||
-I$(top_srcdir)/src/gallium/include \
|
||||
-I$(top_srcdir)/src/gallium/auxiliary \
|
||||
-I$(top_srcdir)/src/gallium/drivers \
|
||||
|
|
|
|||
|
|
@ -147,6 +147,8 @@ dri_destroy_screen(__DRIscreen * sPriv);
|
|||
|
||||
extern const struct __DriverAPIRec galliumdrm_driver_api;
|
||||
extern const __DRIextension *galliumdrm_driver_extensions[];
|
||||
extern const struct __DriverAPIRec galliumsw_driver_api;
|
||||
extern const __DRIextension *galliumsw_driver_extensions[];
|
||||
extern const __DRIconfigOptionsExtension gallium_config_options;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -397,7 +397,7 @@ drisw_create_buffer(__DRIscreen * sPriv,
|
|||
*
|
||||
* DRI versions differ in their implementation of init_screen and swap_buffers.
|
||||
*/
|
||||
const struct __DriverAPIRec driDriverAPI = {
|
||||
const struct __DriverAPIRec galliumsw_driver_api = {
|
||||
.InitScreen = drisw_init_screen,
|
||||
.DestroyScreen = dri_destroy_screen,
|
||||
.CreateContext = dri_create_context,
|
||||
|
|
@ -411,7 +411,7 @@ const struct __DriverAPIRec driDriverAPI = {
|
|||
};
|
||||
|
||||
/* This is the table of extensions that the loader will dlsym() for. */
|
||||
PUBLIC const __DRIextension *__driDriverExtensions[] = {
|
||||
const __DRIextension *galliumsw_driver_extensions[] = {
|
||||
&driCoreExtension.base,
|
||||
&driSWRastExtension.base,
|
||||
&driCopySubBufferExtension.base,
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ swrast_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS)
|
|||
|
||||
swrast_dri_la_LIBADD = \
|
||||
$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
|
||||
$(top_builddir)/src/mesa/drivers/dri/common/libmegadriver_stub.la \
|
||||
$(top_builddir)/src/gallium/state_trackers/dri/sw/libdrisw.la \
|
||||
$(top_builddir)/src/gallium/winsys/sw/dri/libswdri.la \
|
||||
$(top_builddir)/src/gallium/drivers/softpipe/libsoftpipe.la \
|
||||
|
|
|
|||
|
|
@ -2,6 +2,14 @@ Import('*')
|
|||
|
||||
env = drienv.Clone()
|
||||
|
||||
env.Append(CPPPATH = [
|
||||
'#/src/loader',
|
||||
'#/src/mapi',
|
||||
'#/src/mesa',
|
||||
'#/src/mesa/drivers/dri/common',
|
||||
'#/src/gallium/state_trackers/dri/common',
|
||||
])
|
||||
|
||||
env.Prepend(LIBS = [
|
||||
st_drisw,
|
||||
ws_dri,
|
||||
|
|
@ -10,6 +18,7 @@ env.Prepend(LIBS = [
|
|||
mesa,
|
||||
glsl,
|
||||
gallium,
|
||||
megadrivers_stub,
|
||||
dri_common,
|
||||
])
|
||||
|
||||
|
|
|
|||
|
|
@ -34,6 +34,15 @@
|
|||
|
||||
#include "state_tracker/drm_driver.h"
|
||||
#include "sw/dri/dri_sw_winsys.h"
|
||||
#include "dri_screen.h"
|
||||
|
||||
const __DRIextension **__driDriverGetExtensions_swrast(void);
|
||||
|
||||
PUBLIC const __DRIextension **__driDriverGetExtensions_swrast(void)
|
||||
{
|
||||
globalDriverAPI = &galliumsw_driver_api;
|
||||
return galliumsw_driver_extensions;
|
||||
}
|
||||
|
||||
DRM_DRIVER_DESCRIPTOR("swrast", NULL, NULL, NULL);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue