summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEmil Velikov <[email protected]>2014-06-27 19:30:38 +0100
committerEmil Velikov <[email protected]>2014-07-10 01:06:48 +0100
commit0e357234f3289058f9ee0653e2dbdef4ef825e31 (patch)
tree45ddebd1c6c640f47121258bbf0fe2ac5539680d /src
parent3b7c120be3fd0d979e2e36e87f0ceca7290ea078 (diff)
st/dri/drm: remove __driDriverExtensions and driDriverAPI
... and use libmegadriver_stub as their provider. Teach scons how to build the library archive and use it. v2: scons: fix build on a drm-less system. Signed-off-by: Emil Velikov <[email protected]> Tested-by: Rob Clark <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/gallium/state_trackers/dri/drm/dri2.c22
-rw-r--r--src/gallium/targets/dri/Makefile.am1
-rw-r--r--src/gallium/targets/dri/SConscript1
-rw-r--r--src/mesa/drivers/dri/common/SConscript27
4 files changed, 29 insertions, 22 deletions
diff --git a/src/gallium/state_trackers/dri/drm/dri2.c b/src/gallium/state_trackers/dri/drm/dri2.c
index 1d26522ca96..f6a4fe679f3 100644
--- a/src/gallium/state_trackers/dri/drm/dri2.c
+++ b/src/gallium/state_trackers/dri/drm/dri2.c
@@ -1328,20 +1328,6 @@ dri2_create_buffer(__DRIscreen * sPriv,
*
* DRI versions differ in their implementation of init_screen and swap_buffers.
*/
-const struct __DriverAPIRec driDriverAPI = {
- .InitScreen = dri2_init_screen,
- .DestroyScreen = dri_destroy_screen,
- .CreateContext = dri_create_context,
- .DestroyContext = dri_destroy_context,
- .CreateBuffer = dri2_create_buffer,
- .DestroyBuffer = dri_destroy_buffer,
- .MakeCurrent = dri_make_current,
- .UnbindContext = dri_unbind_context,
-
- .AllocateBuffer = dri2_allocate_buffer,
- .ReleaseBuffer = dri2_release_buffer,
-};
-
const struct __DriverAPIRec galliumdrm_driver_api = {
.InitScreen = dri2_init_screen,
.DestroyScreen = dri_destroy_screen,
@@ -1357,14 +1343,6 @@ const struct __DriverAPIRec galliumdrm_driver_api = {
};
/* This is the table of extensions that the loader will dlsym() for. */
-PUBLIC const __DRIextension *__driDriverExtensions[] = {
- &driCoreExtension.base,
- &driImageDriverExtension.base,
- &driDRI2Extension.base,
- &gallium_config_options.base,
- NULL
-};
-
const __DRIextension *galliumdrm_driver_extensions[] = {
&driCoreExtension.base,
&driImageDriverExtension.base,
diff --git a/src/gallium/targets/dri/Makefile.am b/src/gallium/targets/dri/Makefile.am
index 090103e581b..fd19d65275f 100644
--- a/src/gallium/targets/dri/Makefile.am
+++ b/src/gallium/targets/dri/Makefile.am
@@ -37,6 +37,7 @@ endif # HAVE_LD_VERSION_SCRIPT
gallium_dri_la_LIBADD = \
$(top_builddir)/src/mesa/libmesagallium.la \
$(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/drm/libdridrm.la \
$(top_builddir)/src/gallium/auxiliary/libgallium.la \
$(top_builddir)/src/gallium/drivers/galahad/libgalahad.la \
diff --git a/src/gallium/targets/dri/SConscript b/src/gallium/targets/dri/SConscript
index 5b5ddc6a25b..a78a1b11793 100644
--- a/src/gallium/targets/dri/SConscript
+++ b/src/gallium/targets/dri/SConscript
@@ -34,6 +34,7 @@ env.Prepend(LIBS = [
mesa,
glsl,
gallium,
+ megadrivers_stub,
COMMON_DRI_DRM_OBJECTS
])
diff --git a/src/mesa/drivers/dri/common/SConscript b/src/mesa/drivers/dri/common/SConscript
index 41f6356c32d..2763380cd8a 100644
--- a/src/mesa/drivers/dri/common/SConscript
+++ b/src/mesa/drivers/dri/common/SConscript
@@ -76,9 +76,36 @@ driswenv.AppendUnique(LIBS = [
'expat',
])
+#
+# megadrivers_stub
+#
+env = env.Clone()
+
+env.Append(CPPPATH = [
+ '#/include',
+ '#/src/',
+ '#/src/mapi',
+ '#/src/mesa',
+])
+
+env.Append(CPPDEFINES = [
+ '__NOT_HAVE_DRM_H',
+ 'HAVE_DLADDR',
+])
+
+sources = env.ParseSourceList('Makefile.sources', 'megadriver_stub_FILES')
+
+megadrivers_stub = env.ConvenienceLibrary(
+ target = 'megadrivers_stub',
+ source = sources,
+)
+
+env.Alias('megadrivers_stub', megadrivers_stub)
+
Export([
'drienv',
'driswenv',
'COMMON_DRI_SW_OBJECTS',
'COMMON_DRI_DRM_OBJECTS',
+ 'megadrivers_stub',
])