fix [#36459] Official blenderplayer can not go fullscreen on Linux
authorCampbell Barton <ideasman42@gmail.com>
Wed, 4 Sep 2013 23:43:25 +0000 (23:43 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 4 Sep 2013 23:43:25 +0000 (23:43 +0000)
use modified patch from Alex Fraser (z0r)

build_files/scons/config/freebsd8-config.py
build_files/scons/config/freebsd9-config.py
build_files/scons/config/linux-config.py
build_files/scons/tools/btools.py
intern/ghost/SConscript

index 3318e21bf1db08aea0106ed9ee7f04c607a39c86..e94f61f7819a572eace77bbbf100559bedcdf16f 100644 (file)
@@ -139,7 +139,7 @@ BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
 WITH_BF_STATICOPENGL = False
 BF_OPENGL = '/usr/local'
 BF_OPENGL_INC = '${BF_OPENGL}/include'
-BF_OPENGL_LIB = 'GL GLU X11 Xi'
+BF_OPENGL_LIB = 'GL GLU X11 Xi Xxf86vm'
 BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
 BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
 
index b6c5c0d45eb5cad9f62732e0a5f0c6cb68b58286..8535ececb24cbdbdc0969801420e34887386092f 100644 (file)
@@ -139,7 +139,7 @@ BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
 WITH_BF_STATICOPENGL = False
 BF_OPENGL = '/usr/local'
 BF_OPENGL_INC = '${BF_OPENGL}/include'
-BF_OPENGL_LIB = 'GL GLU X11 Xi'
+BF_OPENGL_LIB = 'GL GLU X11 Xi Xxf86vm'
 BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
 BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
 
index 6106142f8a98beb6a2a61c03c9ababea49764e4a..93fa6137bb095c21aa6a5289e65e1a882e44ed07 100644 (file)
@@ -152,7 +152,7 @@ BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
 WITH_BF_STATICOPENGL = False
 BF_OPENGL = '/usr'
 BF_OPENGL_INC = '${BF_OPENGL}/include'
-BF_OPENGL_LIB = 'GL GLU X11 Xi'
+BF_OPENGL_LIB = 'GL GLU X11 Xi Xxf86vm'
 BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
 BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
 
index 53dd99a79713c16e207160a851774e8fddc47334..454e72a1a72975489992cc263aff29abe1c002af 100644 (file)
@@ -141,6 +141,8 @@ def validate_arguments(args, bc):
             'WITH_GHOST_COCOA',
             'WITH_GHOST_SDL',
             'WITH_GHOST_XDND',
+            'WITH_X11_XINPUT',
+            'WITH_X11_XF86VMODE',
             'BF_GHOST_DEBUG',
             'USE_QTKIT',
             'BF_FANCY', 'BF_QUIET', 'BF_LINE_OVERWRITE',
@@ -424,6 +426,8 @@ def read_opts(env, cfg, args):
         ('BF_OPENMP_LIBPATH', 'Path to OpenMP libraries (used when cross-compiling with older versions of WinGW)', ''),
         (BoolVariable('WITH_GHOST_COCOA', 'Use Cocoa-framework if true', False)),
         (BoolVariable('WITH_GHOST_SDL', 'Enable building blender against SDL for windowing rather then the native APIs', False)),
+        (BoolVariable('WITH_X11_XINPUT', 'Enable X11 Xinput (tablet support and unicode input)', True)),
+        (BoolVariable('WITH_X11_XF86VMODE', 'Enable X11 video mode switching', True)),
         (BoolVariable('USE_QTKIT', 'Use QTKIT if true', False)),
         ('BF_OPENMP_LIB_STATIC', 'OpenMP static library', ''),
 
index e48e4ee6b96e629838fb49bfad4ca6a03c416fd7..d1ecc5e8c13a43642ee61c9c0f6b8f3acc7d9968 100644 (file)
@@ -75,7 +75,12 @@ elif window_system in ('linux', 'openbsd3', 'sunos5', 'freebsd7', 'freebsd8', 'f
     ## So until this is supported properly as with CMake,
     ## just dont use the PREFIX.
     # defs += ['PREFIX=\\"/usr/local/\\"']  # XXX, make an option
-    defs += ['WITH_X11_XINPUT']  # XXX, make an option
+    if env['WITH_X11_XINPUT']:
+        defs += ['WITH_X11_XINPUT']
+
+    if env['WITH_X11_XF86VMODE']:
+        #incs += env['X11_xf86vmode_INCLUDE_PATH']
+        defs += ['WITH_X11_XF86VMODE']
 
     # freebsd doesn't seem to support XDND protocol
     if env['WITH_GHOST_XDND'] and window_system not in ('freebsd7', 'freebsd8', 'freebsd9'):