From 601bfb5951ae303b54b4dd8a50bf0558017bf549 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Wed, 10 Mar 2010 10:34:29 +0000 Subject: python: Fix up state tracker for sw api. --- src/gallium/state_trackers/python/SConscript | 29 ++++++++++++---------------- 1 file changed, 12 insertions(+), 17 deletions(-) (limited to 'src/gallium/state_trackers/python/SConscript') diff --git a/src/gallium/state_trackers/python/SConscript b/src/gallium/state_trackers/python/SConscript index 527e065cd9..8010f122b7 100644 --- a/src/gallium/state_trackers/python/SConscript +++ b/src/gallium/state_trackers/python/SConscript @@ -33,31 +33,26 @@ if 'python' in env['statetrackers']: 'gallium.i', 'st_device.c', 'st_sample.c', + 'st_hardpipe_winsys.c', + 'st_softpipe_winsys.c', ] - drivers = [ - trace - ] + env.Prepend(LIBS = [ + trace, + gallium + ]) if 'llvmpipe' in env['drivers']: + env.Append(CPPDEFINES = ['HAVE_LLVMPIPE']) env.Tool('llvm') - sources += ['st_llvmpipe_winsys.c'] - drivers += [llvmpipe] - else: - sources += ['st_softpipe_winsys.c'] - drivers += [softpipe] - - pyst = env.ConvenienceLibrary( - target = 'pyst', - source = sources, - ) + env.Prepend(LIBS = [llvmpipe]) + if 'softpipe' in env['drivers']: + env.Append(CPPDEFINES = ['HAVE_SOFTPIPE']) + env.Prepend(LIBS = [softpipe]) env['no_import_lib'] = 1 env.SharedLibrary( target = '_gallium', - source = [ - 'st_hardpipe_winsys.c', - ], - LIBS = [pyst] + drivers + gallium + env['LIBS'], + source = sources, ) -- cgit v1.2.3 From 7b8641bbba995bc3fc299b1018720caa1e91cb9f Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Wed, 10 Mar 2010 12:00:13 +0000 Subject: python: More build fixes. --- src/gallium/SConscript | 3 +++ src/gallium/state_trackers/python/SConscript | 3 ++- src/gallium/state_trackers/python/st_device.c | 5 +++++ src/gallium/winsys/SConscript | 4 ---- 4 files changed, 10 insertions(+), 5 deletions(-) (limited to 'src/gallium/state_trackers/python/SConscript') diff --git a/src/gallium/SConscript b/src/gallium/SConscript index ba541f9636..c833d83e65 100644 --- a/src/gallium/SConscript +++ b/src/gallium/SConscript @@ -7,6 +7,9 @@ SConscript('auxiliary/SConscript') for driver in env['drivers']: SConscript(os.path.join('drivers', driver, 'SConscript')) +# Needed by some state trackers +SConscript('winsys/null/SConscript') + SConscript('state_trackers/python/SConscript') if platform != 'embedded': SConscript('state_trackers/glx/xlib/SConscript') diff --git a/src/gallium/state_trackers/python/SConscript b/src/gallium/state_trackers/python/SConscript index 8010f122b7..2b44c13737 100644 --- a/src/gallium/state_trackers/python/SConscript +++ b/src/gallium/state_trackers/python/SConscript @@ -38,8 +38,9 @@ if 'python' in env['statetrackers']: ] env.Prepend(LIBS = [ + ws_null, trace, - gallium + gallium, ]) if 'llvmpipe' in env['drivers']: diff --git a/src/gallium/state_trackers/python/st_device.c b/src/gallium/state_trackers/python/st_device.c index 3aeb6226d0..335e8e7f0d 100644 --- a/src/gallium/state_trackers/python/st_device.c +++ b/src/gallium/state_trackers/python/st_device.c @@ -34,6 +34,7 @@ #include "util/u_math.h" #include "util/u_memory.h" #include "util/u_simple_shaders.h" +#include "trace/tr_public.h" #include "st_device.h" #include "st_winsys.h" @@ -84,6 +85,10 @@ st_device_create(boolean hardware) else screen = st_software_screen_create(); + screen = trace_screen_create(screen); + if (!screen) + goto no_screen; + st_dev = CALLOC_STRUCT(st_device); if (!st_dev) goto no_device; diff --git a/src/gallium/winsys/SConscript b/src/gallium/winsys/SConscript index 4567d17447..30c3378dff 100644 --- a/src/gallium/winsys/SConscript +++ b/src/gallium/winsys/SConscript @@ -1,9 +1,5 @@ Import('*') -SConscript([ - 'null/SConscript', -]) - if env['dri']: SConscript([ 'drm/SConscript', -- cgit v1.2.3 From 986ce8f1c118007062cacd4b4bad54657cd09a65 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Wed, 10 Mar 2010 12:05:10 +0000 Subject: python: Remove broken link hack. --- src/gallium/state_trackers/python/SConscript | 1 + src/gallium/state_trackers/python/st_hardpipe_winsys.c | 5 ----- 2 files changed, 1 insertion(+), 5 deletions(-) (limited to 'src/gallium/state_trackers/python/SConscript') diff --git a/src/gallium/state_trackers/python/SConscript b/src/gallium/state_trackers/python/SConscript index 2b44c13737..781f54bf2b 100644 --- a/src/gallium/state_trackers/python/SConscript +++ b/src/gallium/state_trackers/python/SConscript @@ -24,6 +24,7 @@ if 'python' in env['statetrackers']: 'ws2_32', ]) else: + env.Append(CPPDEFINES = ['GCC_HASCLASSVISIBILITY']) env.Append(LIBS = [ 'GL', 'X11', diff --git a/src/gallium/state_trackers/python/st_hardpipe_winsys.c b/src/gallium/state_trackers/python/st_hardpipe_winsys.c index 0bf7c51613..b141177b79 100644 --- a/src/gallium/state_trackers/python/st_hardpipe_winsys.c +++ b/src/gallium/state_trackers/python/st_hardpipe_winsys.c @@ -54,11 +54,6 @@ static PFNGETGALLIUMSCREENMESAPROC pfnGetGalliumScreenMESA = NULL; static PFNCREATEGALLIUMCONTEXTMESAPROC pfnCreateGalliumContextMESA = NULL; -/* XXX: Force init_gallium symbol to be linked */ -extern void init_gallium(void); -void (*force_init_gallium_linkage)(void) = &init_gallium; - - #ifdef PIPE_OS_WINDOWS static INLINE boolean -- cgit v1.2.3