summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/dri/dri2.c
diff options
context:
space:
mode:
authorAaron Watry <[email protected]>2014-08-02 16:10:34 -0500
committerAaron Watry <[email protected]>2014-08-03 12:13:47 -0500
commit47e5039680787d1d7072caffdb767a54ecd63218 (patch)
tree0020ca5924ad0cd97f40bef141109028bfc9d3fd /src/gallium/state_trackers/dri/dri2.c
parent7b3d0a9a1eb11bf70390ad116ed662a47f06183e (diff)
st/dri: Fix driver loading if swrast isn't built
If building hardware drivers only, then kms_swrast_create_screen won't be defined in inline_drm_helper.h and hardware drivers will fail to dlopen as a result. Copy the #if guards from inline_drm_helper.h to dri_kms_init_screen to make the definition/use of the function match. Fixes radeonsi_dri.so dlopen with the following configure: ./configure --with-dri-drivers= --with-dri-driverdir=/usr/local/lib/dri/ \ --enable-gbm --enable-gallium-gbm --enable-debug --enable-opencl \ --enable-opencl-icd --with-gallium-drivers=radeonsi \ --with-egl-platforms=drm --enable-glx-tls --enable-texture-float \ --enable-omx Signed-off-by: Aaron Watry <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/dri/dri2.c')
-rw-r--r--src/gallium/state_trackers/dri/dri2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
index ef192e36f7a..c466de78379 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -1322,6 +1322,8 @@ static const __DRIconfig **
dri_kms_init_screen(__DRIscreen * sPriv)
{
#if GALLIUM_STATIC_TARGETS
+#if defined(GALLIUM_SOFTPIPE)
+#if defined(DRI_TARGET)
const __DRIconfig **configs;
struct dri_screen *screen;
struct pipe_screen *pscreen = NULL;
@@ -1352,6 +1354,8 @@ dri_kms_init_screen(__DRIscreen * sPriv)
fail:
dri_destroy_screen_helper(screen);
FREE(screen);
+#endif // DRI_TARGET
+#endif // GALLIUM_SOFTPIPE
#endif // GALLIUM_STATIC_TARGETS
return NULL;
}