From a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3 Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Sun, 9 Jan 2011 23:37:32 +0800 Subject: scons: Updates for targets/egl-static. Update SConscripts to re-enable or add support for EGL on windows and x11 platforms respectively. targets/egl-gdi is replaced by targets/egl-static, where "-static" means pipe drivers and state trackers are linked to statically by egl_gallium, and egl_gallium is a built-in driver of libEGL. There is no more egl_gallium.dll on Windows. --- src/egl/main/SConscript | 30 +++++++++++++++++------------- src/egl/main/egldriver.c | 3 +++ src/egl/main/egldriver.h | 4 ++++ 3 files changed, 24 insertions(+), 13 deletions(-) (limited to 'src/egl') diff --git a/src/egl/main/SConscript b/src/egl/main/SConscript index f001b81600..8c57ceaf20 100644 --- a/src/egl/main/SConscript +++ b/src/egl/main/SConscript @@ -7,13 +7,23 @@ Import('*') env = env.Clone() env.Append(CPPDEFINES = [ - '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_WINDOWS', + '_EGL_BUILT_IN_DRIVER_GALLIUM', '_EGL_DRIVER_SEARCH_DIR=\\"\\"', - '_EGL_OS_WINDOWS', - '_EGL_GET_CORE_ADDRESSES', - 'KHRONOS_DLL_EXPORTS', ]) +if env['platform'] == 'windows': + env.Append(CPPDEFINES = [ + '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_WINDOWS', + '_EGL_OS_WINDOWS', + '_EGL_GET_CORE_ADDRESSES', + 'KHRONOS_DLL_EXPORTS', + ]) +else: + env.Append(CPPDEFINES = [ + '_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_X11', + '_EGL_OS_UNIX', + ]) + env.Append(CPPPATH = [ '#/include', ]) @@ -38,15 +48,9 @@ egl_sources = [ 'eglsync.c', ] -egl = env.SharedLibrary( - target = 'libEGL', - source = egl_sources + ['egl.def'], +egl = env.ConvenienceLibrary( + target = 'egl', + source = egl_sources, ) -installed_egl = env.InstallSharedLibrary(egl, version=(1, 4, 0)) - -env.Alias('egl', installed_egl) - -egl = [env.FindIxes(egl, 'LIBPREFIX', 'LIBSUFFIX')] - Export('egl') diff --git a/src/egl/main/egldriver.c b/src/egl/main/egldriver.c index 46876d0056..b7c3de3e38 100644 --- a/src/egl/main/egldriver.c +++ b/src/egl/main/egldriver.c @@ -37,6 +37,9 @@ const struct { const char *name; _EGLMain_t main; } _eglBuiltInDrivers[] = { +#ifdef _EGL_BUILT_IN_DRIVER_GALLIUM + { "egl_gallium", _eglBuiltInDriverGALLIUM }, +#endif #ifdef _EGL_BUILT_IN_DRIVER_DRI2 { "egl_dri2", _eglBuiltInDriverDRI2 }, #endif diff --git a/src/egl/main/egldriver.h b/src/egl/main/egldriver.h index 651788cb7a..d617757919 100644 --- a/src/egl/main/egldriver.h +++ b/src/egl/main/egldriver.h @@ -64,6 +64,10 @@ struct _egl_driver }; +extern _EGLDriver * +_eglBuiltInDriverGALLIUM(const char *args); + + extern _EGLDriver * _eglBuiltInDriverDRI2(const char *args); -- cgit v1.2.3