diff options
| author | George Sapountzis <gsapountzis@gmail.com> | 2010-03-21 19:33:17 +0200 | 
|---|---|---|
| committer | George Sapountzis <gsapountzis@gmail.com> | 2010-03-21 19:33:17 +0200 | 
| commit | 15c7fa460b93039a1676cc08a218101f92681190 (patch) | |
| tree | 2a4c4575736e8b51df0650154a2cce2640c777e1 | |
| parent | f9c0cbd1ad0c5948ea577edb5c76b0c45976a285 (diff) | |
Revert "gallium: add soft screen helper"
This reverts commit f87a5f6499f51f651c2a9f2d4682875b22926905.
| -rw-r--r-- | src/gallium/auxiliary/target-helpers/soft_screen.c | 73 | ||||
| -rw-r--r-- | src/gallium/auxiliary/target-helpers/soft_screen.h | 12 | ||||
| -rw-r--r-- | src/gallium/targets/libgl-xlib/Makefile | 1 | ||||
| l--------- | src/gallium/targets/libgl-xlib/soft_screen.c | 1 | ||||
| -rw-r--r-- | src/gallium/targets/libgl-xlib/xlib.c | 34 | ||||
| -rw-r--r-- | src/gallium/winsys/drm/sw/Makefile | 3 | ||||
| l--------- | src/gallium/winsys/drm/sw/soft_screen.c | 1 | ||||
| -rw-r--r-- | src/gallium/winsys/drm/sw/sw_drm_api.c | 32 | 
8 files changed, 37 insertions, 120 deletions
| diff --git a/src/gallium/auxiliary/target-helpers/soft_screen.c b/src/gallium/auxiliary/target-helpers/soft_screen.c deleted file mode 100644 index 00d386ee1d..0000000000 --- a/src/gallium/auxiliary/target-helpers/soft_screen.c +++ /dev/null @@ -1,73 +0,0 @@ -/************************************************************************** - * - * Copyright 2010 VMware, Inc. - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL - * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, - * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR - * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE - * USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * - **************************************************************************/ - -#include "target-helpers/soft_screen.h" -#include "softpipe/sp_public.h" -#include "llvmpipe/lp_public.h" -#include "cell/ppu/cell_public.h" -#include "util/u_debug.h" - -/** - * Choose and create a software renderer screen. - */ -struct pipe_screen * -gallium_soft_create_screen( struct sw_winsys *winsys ) -{ -   const char *default_driver = NULL; -   const char *driver = NULL; -   struct pipe_screen *screen = NULL; - -#if defined(GALLIUM_CELL) -   default_driver = "cell"; -#elif defined(GALLIUM_LLVMPIPE) -   default_driver = "llvmpipe"; -#elif defined(GALLIUM_SOFTPIPE) -   default_driver = "softpipe"; -#else -   default_driver = ""; -#endif - -   driver = debug_get_option("GALLIUM_DRIVER", default_driver); - -#if defined(GALLIUM_CELL) -   if (screen == NULL && strcmp(driver, "cell") == 0) -      screen = cell_create_screen( winsys ); -#endif - -#if defined(GALLIUM_LLVMPIPE) -   if (screen == NULL && strcmp(driver, "llvmpipe") == 0) -      screen = llvmpipe_create_screen( winsys ); -#endif - -#if defined(GALLIUM_SOFTPIPE) -   if (screen == NULL) -      screen = softpipe_create_screen( winsys ); -#endif - -   return screen; -} diff --git a/src/gallium/auxiliary/target-helpers/soft_screen.h b/src/gallium/auxiliary/target-helpers/soft_screen.h deleted file mode 100644 index 5c1012644a..0000000000 --- a/src/gallium/auxiliary/target-helpers/soft_screen.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef SOFT_SCREEN_HELPER_H -#define SOFT_SCREEN_HELPER_H - -#include "pipe/p_compiler.h" - -struct pipe_screen; -struct sw_winsys; - -struct pipe_screen * -gallium_soft_create_screen( struct sw_winsys *winsys ); - -#endif diff --git a/src/gallium/targets/libgl-xlib/Makefile b/src/gallium/targets/libgl-xlib/Makefile index 2c44a62102..5a4e035c2e 100644 --- a/src/gallium/targets/libgl-xlib/Makefile +++ b/src/gallium/targets/libgl-xlib/Makefile @@ -27,7 +27,6 @@ DEFINES += \  #-DGALLIUM_CELL will be defined by the config */  XLIB_TARGET_SOURCES = \ -	soft_screen.c \  	xlib.c diff --git a/src/gallium/targets/libgl-xlib/soft_screen.c b/src/gallium/targets/libgl-xlib/soft_screen.c deleted file mode 120000 index d6d878f365..0000000000 --- a/src/gallium/targets/libgl-xlib/soft_screen.c +++ /dev/null @@ -1 +0,0 @@ -../../auxiliary/target-helpers/soft_screen.c
\ No newline at end of file diff --git a/src/gallium/targets/libgl-xlib/xlib.c b/src/gallium/targets/libgl-xlib/xlib.c index e786221210..48e79fe4f3 100644 --- a/src/gallium/targets/libgl-xlib/xlib.c +++ b/src/gallium/targets/libgl-xlib/xlib.c @@ -36,7 +36,6 @@  #include "softpipe/sp_public.h"  #include "llvmpipe/lp_public.h"  #include "cell/ppu/cell_public.h" -#include "target-helpers/soft_screen.h"  #include "target-helpers/wrap_screen.h"  #include "xm_public.h" @@ -64,6 +63,8 @@ PUBLIC const struct st_module st_module_OpenGL = {  static struct pipe_screen *  swrast_xlib_create_screen( Display *display )  { +   const char *default_driver; +   const char *driver;     struct sw_winsys *winsys;     struct pipe_screen *screen = NULL; @@ -74,7 +75,36 @@ swrast_xlib_create_screen( Display *display )     if (winsys == NULL)        return NULL; -   screen = gallium_soft_create_screen( winsys ); +#if defined(GALLIUM_CELL) +   default_driver = "cell"; +#elif defined(GALLIUM_LLVMPIPE) +   default_driver = "llvmpipe"; +#elif defined(GALLIUM_SOFTPIPE) +   default_driver = "softpipe"; +#else +   default_driver = ""; +#endif + +   driver = debug_get_option("GALLIUM_DRIVER", default_driver); + +   /* Create a software rasterizer on top of that winsys: +    */ +#if defined(GALLIUM_CELL) +   if (screen == NULL && +       strcmp(driver, "cell") == 0) +      screen = cell_create_screen( winsys ); +#endif + +#if defined(GALLIUM_LLVMPIPE) +   if (screen == NULL && +       strcmp(driver, "llvmpipe") == 0) +      screen = llvmpipe_create_screen( winsys ); +#endif + +#if defined(GALLIUM_SOFTPIPE) +   if (screen == NULL) +      screen = softpipe_create_screen( winsys ); +#endif     if (screen == NULL)        goto fail; diff --git a/src/gallium/winsys/drm/sw/Makefile b/src/gallium/winsys/drm/sw/Makefile index 12b20cbd45..5f3c3ec325 100644 --- a/src/gallium/winsys/drm/sw/Makefile +++ b/src/gallium/winsys/drm/sw/Makefile @@ -4,12 +4,11 @@ include $(TOP)/configs/current  LIBNAME = swdrm  C_SOURCES = \ -	soft_screen.c \  	wrapper_sw_winsys.c \  	sw_drm_api.c  LIBRARY_INCLUDES = -LIBRARY_DEFINES = -DGALLIUM_SOFTPIPE +LIBRARY_DEFINES =  include ../../../Makefile.template diff --git a/src/gallium/winsys/drm/sw/soft_screen.c b/src/gallium/winsys/drm/sw/soft_screen.c deleted file mode 120000 index 423597ba31..0000000000 --- a/src/gallium/winsys/drm/sw/soft_screen.c +++ /dev/null @@ -1 +0,0 @@ -../../../auxiliary/target-helpers/soft_screen.c
\ No newline at end of file diff --git a/src/gallium/winsys/drm/sw/sw_drm_api.c b/src/gallium/winsys/drm/sw/sw_drm_api.c index ed3ce146eb..9c5933c73a 100644 --- a/src/gallium/winsys/drm/sw/sw_drm_api.c +++ b/src/gallium/winsys/drm/sw/sw_drm_api.c @@ -24,11 +24,8 @@   **********************************************************/ -#include "pipe/p_screen.h"  #include "util/u_memory.h" -#include "target-helpers/soft_screen.h" - -#include "state_tracker/sw_winsys.h" +#include "softpipe/sp_public.h"  #include "state_tracker/drm_api.h"  #include "wrapper_sw_winsys.h"  #include "sw_drm_api.h" @@ -63,35 +60,14 @@ sw_drm_create_screen(struct drm_api *_api, int drmFD,  {     struct sw_drm_api *swapi = sw_drm_api(_api);     struct drm_api *api = swapi->api; -   struct sw_winsys *sww = NULL; -   struct pipe_screen *screen = NULL; -   struct pipe_screen *soft_screen = NULL; +   struct sw_winsys *sww; +   struct pipe_screen *screen;     screen = api->create_screen(api, drmFD, arg); -   if (screen == NULL) -      goto fail;     sww = wrapper_sw_winsys_warp_pipe_screen(screen); -   if (sww == NULL) -      goto fail; - -   soft_screen = gallium_soft_create_screen(sww); -   if (soft_screen == NULL) -      goto fail; - -   return soft_screen; - -fail: -   if (soft_screen) -      soft_screen->destroy(soft_screen); - -   if (sww) -      sww->destroy(sww); - -   if (screen) -      screen->destroy(screen); -   return NULL; +   return softpipe_create_screen(sww);  }  static void | 
