summaryrefslogtreecommitdiff
path: root/src/gallium/targets/egl-swrast
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/targets/egl-swrast')
-rw-r--r--src/gallium/targets/egl-swrast/Makefile12
-rw-r--r--src/gallium/targets/egl-swrast/SConscript30
-rw-r--r--src/gallium/targets/egl-swrast/swrast_glue.c11
3 files changed, 53 insertions, 0 deletions
diff --git a/src/gallium/targets/egl-swrast/Makefile b/src/gallium/targets/egl-swrast/Makefile
new file mode 100644
index 0000000000..7d4f505498
--- /dev/null
+++ b/src/gallium/targets/egl-swrast/Makefile
@@ -0,0 +1,12 @@
+TOP = ../../../..
+include $(TOP)/configs/current
+
+# Do propperly
+CFLAGS+="-I$(TOP)/src/gallium/include"
+
+EGL_DRIVER_NAME = swrast
+EGL_DRIVER_SOURCES = swrast_glue.c
+EGL_DRIVER_LIBS =
+EGL_DRIVER_PIPES =
+
+include ../Makefile.egl
diff --git a/src/gallium/targets/egl-swrast/SConscript b/src/gallium/targets/egl-swrast/SConscript
new file mode 100644
index 0000000000..213e5b3e6c
--- /dev/null
+++ b/src/gallium/targets/egl-swrast/SConscript
@@ -0,0 +1,30 @@
+#######################################################################
+# SConscript for egl-swrast target
+
+Import('*')
+
+if env['platform'] == 'windows':
+
+ env = env.Clone()
+
+ env.Append(LIBS = [
+ 'gdi32',
+ 'user32',
+ 'kernel32',
+ 'ws2_32',
+ ])
+
+ drivers = [softpipe]
+ if env['llvm']:
+ drivers += [llvmpipe]
+ drivers += [identity, trace, rbug]
+
+ env['no_import_lib'] = 1
+
+ egl_gdi_swrast = env.SharedLibrary(
+ target ='egl_gdi_swrast',
+ source = 'swrast_glue.c',
+ LIBS = st_egl_gdi + ws_gdi + drivers + gallium + egl + env['LIBS'],
+ )
+
+ env.InstallSharedLibrary(egl_gdi_swrast)
diff --git a/src/gallium/targets/egl-swrast/swrast_glue.c b/src/gallium/targets/egl-swrast/swrast_glue.c
new file mode 100644
index 0000000000..defd11c687
--- /dev/null
+++ b/src/gallium/targets/egl-swrast/swrast_glue.c
@@ -0,0 +1,11 @@
+#include "state_tracker/drm_api.h"
+
+struct drm_api *
+drm_api_create()
+{
+ return NULL;
+}
+
+/* A poor man's --whole-archive for EGL drivers */
+void *_eglMain(void *);
+void *_eglWholeArchive = (void *) _eglMain;