[Mesa-stable] [PATCH 2/2] glx: make xf86vidmode mandatory for direct rendering
Emil Velikov
emil.l.velikov at gmail.com
Fri Nov 16 13:59:01 UTC 2018
From: Emil Velikov <emil.velikov at collabora.com>
Currently we detect the module and if missing, the glXGetMsc* API is
effectively a stub, always returning false.
This is what effectively has been happening with our meson build :-(
Thus users have no chance of using it - they cannot even distinguish
if the failure is due to a misconfigured build.
There's no reason for keeping xf86vidmode optional - it has been
available in all distributions for years.
Cc: mesa-stable at lists.freedesktop.org
Cc: Dylan Baker <dylan at pnwbakers.com>
Cc: Eric Engestrom <eric at engestrom.ch>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
Note: I intentionally did not polish build systems to keep the patch
short and on point.
---
configure.ac | 12 +-----------
meson.build | 6 ++----
src/glx/Makefile.am | 5 -----
src/glx/SConscript | 5 +----
src/glx/glxcmds.c | 7 +------
src/glx/meson.build | 6 +-----
6 files changed, 6 insertions(+), 35 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2573e0da57e..93a52475d50 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1725,11 +1725,7 @@ xdri)
fi
fi
- # add xf86vidmode if available
- PKG_CHECK_MODULES([XF86VIDMODE], [xxf86vm], HAVE_XF86VIDMODE=yes, HAVE_XF86VIDMODE=no)
- if test "$HAVE_XF86VIDMODE" = yes ; then
- dri_modules="$dri_modules xxf86vm"
- fi
+ dri_modules="$dri_modules xxf86vm"
PKG_CHECK_MODULES([DRIGL], [$dri_modules])
GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
@@ -1742,10 +1738,6 @@ xdri)
;;
esac
-# This is outside the case (above) so that it is invoked even for non-GLX
-# builds.
-AM_CONDITIONAL(HAVE_XF86VIDMODE, test "x$HAVE_XF86VIDMODE" = xyes)
-
GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
GLESv1_CM_PC_LIB_PRIV="-lm $PTHREAD_LIBS $DLOPEN_LIBS"
GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm $PTHREAD_LIBS $DLOPEN_LIBS"
@@ -1762,8 +1754,6 @@ AC_SUBST([GLESv1_CM_PC_LIB_PRIV])
AC_SUBST([GLESv2_LIB_DEPS])
AC_SUBST([GLESv2_PC_LIB_PRIV])
-AC_SUBST([HAVE_XF86VIDMODE])
-
dnl
dnl More GLX setup
dnl
diff --git a/meson.build b/meson.build
index 1b475877827..33f4e5ad3cf 100644
--- a/meson.build
+++ b/meson.build
@@ -1350,7 +1350,7 @@ if with_platform_x11
dep_xdamage = dependency('xdamage', version : '>= 1.1')
dep_xfixes = dependency('xfixes')
dep_xcb_glx = dependency('xcb-glx', version : '>= 1.8.1')
- dep_xxf86vm = dependency('xxf86vm', required : false)
+ dep_xxf86vm = dependency('xxf86vm')
endif
if (with_any_vk or with_glx == 'dri' or
(with_gallium_vdpau or with_gallium_xvmc or with_gallium_va or
@@ -1428,13 +1428,11 @@ elif with_glx == 'dri'
if with_dri_platform == 'drm'
gl_priv_reqs += 'xcb-dri2 >= 1.8'
endif
+ gl_priv_reqs += 'xxf86vm'
endif
if dep_libdrm.found()
gl_priv_reqs += 'libdrm >= 2.4.75'
endif
-if dep_xxf86vm.found()
- gl_priv_reqs += 'xxf86vm'
-endif
gl_priv_libs = []
if dep_thread.found()
diff --git a/src/glx/Makefile.am b/src/glx/Makefile.am
index 8f9d80c9f41..d06ae2972e9 100644
--- a/src/glx/Makefile.am
+++ b/src/glx/Makefile.am
@@ -24,10 +24,6 @@ SUBDIRS =
EXTRA_DIST = SConscript meson.build
-if HAVE_XF86VIDMODE
-EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
-endif
-
AM_CFLAGS = \
-I$(top_srcdir)/include \
-I$(top_srcdir)/include/GL/internal \
@@ -38,7 +34,6 @@ AM_CFLAGS = \
-I$(top_builddir)/src/mapi/glapi \
-I$(top_srcdir)/src/mapi/glapi \
$(VISIBILITY_CFLAGS) \
- $(EXTRA_DEFINES_XF86VIDMODE) \
-D_REENTRANT \
-DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\" \
$(DEFINES) \
diff --git a/src/glx/SConscript b/src/glx/SConscript
index 8ce17715814..051f55b7669 100644
--- a/src/glx/SConscript
+++ b/src/glx/SConscript
@@ -36,10 +36,7 @@ env.Prepend(LIBS = [
env.PkgUseModules('X11')
env.PkgUseModules('XCB')
env.PkgUseModules('DRM')
-
-if env['HAVE_XF86VIDMODE']:
- env.Append(CPPDEFINES = ['XF86VIDMODE'])
- env.PkgUseModules('XF86VIDMODE')
+env.PkgUseModules('XF86VIDMODE')
sources = [
'clientattrib.c',
diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c
index 3ed960fbf3c..b940c8ebdbe 100644
--- a/src/glx/glxcmds.c
+++ b/src/glx/glxcmds.c
@@ -46,11 +46,9 @@
#include "util/debug.h"
#else
#include <sys/time.h>
-#ifdef XF86VIDMODE
#include <X11/extensions/xf86vmode.h>
#endif
#endif
-#endif
#include <X11/Xlib-xcb.h>
#include <xcb/xcb.h>
@@ -2088,7 +2086,6 @@ _X_HIDDEN GLboolean
__glxGetMscRate(struct glx_screen *psc,
int32_t * numerator, int32_t * denominator)
{
-#ifdef XF86VIDMODE
XF86VidModeModeLine mode_line;
int dot_clock;
int i;
@@ -2135,8 +2132,6 @@ __glxGetMscRate(struct glx_screen *psc,
return True;
}
- else
-#endif
return False;
}
@@ -2162,7 +2157,7 @@ _X_HIDDEN GLboolean
__glXGetMscRateOML(Display * dpy, GLXDrawable drawable,
int32_t * numerator, int32_t * denominator)
{
-#if defined( GLX_DIRECT_RENDERING ) && defined( XF86VIDMODE )
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
__GLXDRIdrawable *draw = GetGLXDRIDrawable(dpy, drawable);
if (draw == NULL)
diff --git a/src/glx/meson.build b/src/glx/meson.build
index dd8ba60ad80..f3bbcb433ad 100644
--- a/src/glx/meson.build
+++ b/src/glx/meson.build
@@ -137,10 +137,6 @@ gl_lib_cargs = [
'-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path),
]
-if dep_xxf86vm.found()
- gl_lib_cargs += '-DHAVE_XF86VIDMODE'
-endif
-
libglx = static_library(
'glx',
[files_libglx, glx_generated],
@@ -167,7 +163,7 @@ if with_glx == 'dri'
link_args : [ld_args_bsymbolic, ld_args_gc_sections, extra_ld_args_libgl],
dependencies : [
dep_libdrm, dep_dl, dep_m, dep_thread, dep_x11, dep_xcb_glx, dep_xcb,
- dep_x11_xcb, dep_xcb_dri2, dep_xext, dep_xfixes, dep_xdamage,
+ dep_x11_xcb, dep_xcb_dri2, dep_xext, dep_xfixes, dep_xdamage, dep_xxf86vm,
extra_deps_libgl,
],
version : gl_lib_version,
--
2.19.1
More information about the mesa-stable
mailing list