diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2019-01-04 13:45:49 +0100 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2019-03-06 19:03:31 +0100 |
commit | ab205d9308f3f869432d002412a0b11e28606696 (patch) | |
tree | 70094628d1f1a53840c62553d81f4f498081be89 /recipes-graphics/xorg-xserver | |
parent | b86261ad84a017494219d4e8d6be3162d674ab6d (diff) |
apalis/colibri-t20 -t30: drop machines
These machines use an old Nvidia provided downstream kernel 3.1.10.
They are no longer compatible with more recent sysroot components,
e.g. libc, xserver et. al.
The maintenance burden to keep the userspace components in their old version
becomes simply too high. Keep using the rocko based 2.8 BSP for these machines.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Diffstat (limited to 'recipes-graphics/xorg-xserver')
15 files changed, 1 insertions, 1109 deletions
diff --git a/recipes-graphics/xorg-xserver/files/crash-hack.patch b/recipes-graphics/xorg-xserver/files/crash-hack.patch deleted file mode 100644 index 0053a10..0000000 --- a/recipes-graphics/xorg-xserver/files/crash-hack.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- xorg-server-1.11.2/miext/damage/damage.c~ 2011-04-24 06:54:03.000000000 +0200 -+++ xorg-server-1.11.2/miext/damage/damage.c 2012-07-27 12:12:00.012473812 +0200 -@@ -596,6 +596,8 @@ - ScreenPtr pScreen = pDst->pDrawable->pScreen; - PictureScreenPtr ps = GetPictureScreen(pScreen); - damageScrPriv(pScreen); -+ //ugly hack, the xserver crashes when gtk programs use some fancy font rendering, this prevents this -+ maskFormat = 0; - - if (checkPictureDamage (pDst)) - { diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config/apalis-t30/xorg.conf b/recipes-graphics/xorg-xserver/xserver-xf86-config/apalis-t30/xorg.conf deleted file mode 100644 index fbe1f98..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xf86-config/apalis-t30/xorg.conf +++ /dev/null @@ -1,135 +0,0 @@ -# This is an optimised configuration for Xorg on the Toradex Tegra based Apalis -# and Colibri modules -# -# In order to disable unused monitor outputs, apply the Option "Ignore" "true" -# (in the monitor section). By defining a particular resolution one can choose -# a preferred mode for all monitors. However, this mode is only used if the -# monitor reports it as being supported (via EDID on DVI-D aka HDMI). -# - -# Please refer to the xorg.conf man page for more configuration -# options provided by the X server, including display-related options -# provided by RandR 1.2 and higher. - -# Disable extensions not useful on Tegra. -Section "Module" - Disable "dri" - Disable "dri2" - Disable "glx" - SubSection "extmod" - Option "omit xfree86-dga" - EndSubSection -EndSection - -Section "Device" - Identifier "Tegra" - Driver "tegra" - -# VirtualDesktop indicates which virtual desktops should be used by X. -# X will use the specified virtual desktop *and* the next one. In -# order for an external app to share a display with the X server, it -# needs to use the same virtual desktop. Valid values are integers 0 -# (default) or 1. - -# Option "VirtualDesktop" "1" - -# OverlayDepth is a 32-bit integer which is used to control overlay -# stacking order. The overlay with the lowest depth is in front of -# all others. This value has meaning only when multiple overlays are -# present on a display. - -# Option "OverlayDepth" "255" - -# OverlayCombineMode determines how the X overlay is combined with the -# overlay behind it during scanout. Available modes are: Opaque -# (default), SourceAlphaBlend, and PremultSourceAlphaBlend. This -# value has meaning only when an external process has created a -# display which is behind the X server. - -# Option "OverlayCombineMode" "PremultSourceAlphaBlend" - -# ARGBHWCursor controls whether the X driver uses an overlay to -# display 32-bit "true-color" cursors, or whether such cursors are -# emulated in software. Valid values are "true" (default) to enable -# hardware cursors, and "false" to disable them. - - Option "ARGBHWCursor" "false" - -# Use monitor section with identifier, enables explicit disabling - Option "Monitor-LVDS-1" "LVDS" - Option "Monitor-HDMI-1" "HDMI" -EndSection - -Section "ServerFlags" - - Option "DefaultServerLayout" "Default Layout" -# Set the basic blanking screen saver timeout in minutes. 0 to disable. - - Option "blank time" "0" - -# Set the DPMS timeouts. These are set here because they are global -# rather than screen-specific. These settings alone don't enable DPMS. -# It is enabled per-screen (or per-monitor), and even then only when -# the driver supports it. - - Option "standby time" "0" - Option "suspend time" "0" - Option "off time" "0" -EndSection - -Section "Monitor" - - Identifier "HDMI" - Option "Ignore" "false" - Option "DPMS" "off" - -# Default orientation -# Option "AboveOf" "LVDS" -# Option "Position" "0 0" - -# Explicitly choose a Resolution (check xrandr for available modes) -# Option "PreferredMode" "1280x720" - -EndSection - -Section "Monitor" - - Identifier "LVDS" - Option "Ignore" "false" - Option "DPMS" "off" - -# Note: It is not possible to use explicit modes here as the mode is inherited -# from the Linux framebuffer -# Check Framebuffer documentation: -# http://developer.toradex.com/knowledge-base/framebuffer-(linux) - -EndSection - -Section "Screen" -# NVIDIA uses only one screen, even in dual head mode -# the gluing logic is in the device section - - Identifier "Common Screen" - Device "Tegra" - -# This is the primary monitor - Monitor "LVDS" - - DefaultDepth 16 - -EndSection - -Section "ServerLayout" - Identifier "Default Layout" - - Screen "Common Screen" -EndSection - -Section "InputClass" - - Identifier "Fusion 7/10" - Driver "evdev" - MatchProduct "fusion_F0710A" - MatchDevicePath "/dev/input/event*" - -EndSection diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t20/xorg.conf b/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t20/xorg.conf deleted file mode 100644 index fbe1f98..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t20/xorg.conf +++ /dev/null @@ -1,135 +0,0 @@ -# This is an optimised configuration for Xorg on the Toradex Tegra based Apalis -# and Colibri modules -# -# In order to disable unused monitor outputs, apply the Option "Ignore" "true" -# (in the monitor section). By defining a particular resolution one can choose -# a preferred mode for all monitors. However, this mode is only used if the -# monitor reports it as being supported (via EDID on DVI-D aka HDMI). -# - -# Please refer to the xorg.conf man page for more configuration -# options provided by the X server, including display-related options -# provided by RandR 1.2 and higher. - -# Disable extensions not useful on Tegra. -Section "Module" - Disable "dri" - Disable "dri2" - Disable "glx" - SubSection "extmod" - Option "omit xfree86-dga" - EndSubSection -EndSection - -Section "Device" - Identifier "Tegra" - Driver "tegra" - -# VirtualDesktop indicates which virtual desktops should be used by X. -# X will use the specified virtual desktop *and* the next one. In -# order for an external app to share a display with the X server, it -# needs to use the same virtual desktop. Valid values are integers 0 -# (default) or 1. - -# Option "VirtualDesktop" "1" - -# OverlayDepth is a 32-bit integer which is used to control overlay -# stacking order. The overlay with the lowest depth is in front of -# all others. This value has meaning only when multiple overlays are -# present on a display. - -# Option "OverlayDepth" "255" - -# OverlayCombineMode determines how the X overlay is combined with the -# overlay behind it during scanout. Available modes are: Opaque -# (default), SourceAlphaBlend, and PremultSourceAlphaBlend. This -# value has meaning only when an external process has created a -# display which is behind the X server. - -# Option "OverlayCombineMode" "PremultSourceAlphaBlend" - -# ARGBHWCursor controls whether the X driver uses an overlay to -# display 32-bit "true-color" cursors, or whether such cursors are -# emulated in software. Valid values are "true" (default) to enable -# hardware cursors, and "false" to disable them. - - Option "ARGBHWCursor" "false" - -# Use monitor section with identifier, enables explicit disabling - Option "Monitor-LVDS-1" "LVDS" - Option "Monitor-HDMI-1" "HDMI" -EndSection - -Section "ServerFlags" - - Option "DefaultServerLayout" "Default Layout" -# Set the basic blanking screen saver timeout in minutes. 0 to disable. - - Option "blank time" "0" - -# Set the DPMS timeouts. These are set here because they are global -# rather than screen-specific. These settings alone don't enable DPMS. -# It is enabled per-screen (or per-monitor), and even then only when -# the driver supports it. - - Option "standby time" "0" - Option "suspend time" "0" - Option "off time" "0" -EndSection - -Section "Monitor" - - Identifier "HDMI" - Option "Ignore" "false" - Option "DPMS" "off" - -# Default orientation -# Option "AboveOf" "LVDS" -# Option "Position" "0 0" - -# Explicitly choose a Resolution (check xrandr for available modes) -# Option "PreferredMode" "1280x720" - -EndSection - -Section "Monitor" - - Identifier "LVDS" - Option "Ignore" "false" - Option "DPMS" "off" - -# Note: It is not possible to use explicit modes here as the mode is inherited -# from the Linux framebuffer -# Check Framebuffer documentation: -# http://developer.toradex.com/knowledge-base/framebuffer-(linux) - -EndSection - -Section "Screen" -# NVIDIA uses only one screen, even in dual head mode -# the gluing logic is in the device section - - Identifier "Common Screen" - Device "Tegra" - -# This is the primary monitor - Monitor "LVDS" - - DefaultDepth 16 - -EndSection - -Section "ServerLayout" - Identifier "Default Layout" - - Screen "Common Screen" -EndSection - -Section "InputClass" - - Identifier "Fusion 7/10" - Driver "evdev" - MatchProduct "fusion_F0710A" - MatchDevicePath "/dev/input/event*" - -EndSection diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t30/xorg.conf b/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t30/xorg.conf deleted file mode 100644 index fbe1f98..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xf86-config/colibri-t30/xorg.conf +++ /dev/null @@ -1,135 +0,0 @@ -# This is an optimised configuration for Xorg on the Toradex Tegra based Apalis -# and Colibri modules -# -# In order to disable unused monitor outputs, apply the Option "Ignore" "true" -# (in the monitor section). By defining a particular resolution one can choose -# a preferred mode for all monitors. However, this mode is only used if the -# monitor reports it as being supported (via EDID on DVI-D aka HDMI). -# - -# Please refer to the xorg.conf man page for more configuration -# options provided by the X server, including display-related options -# provided by RandR 1.2 and higher. - -# Disable extensions not useful on Tegra. -Section "Module" - Disable "dri" - Disable "dri2" - Disable "glx" - SubSection "extmod" - Option "omit xfree86-dga" - EndSubSection -EndSection - -Section "Device" - Identifier "Tegra" - Driver "tegra" - -# VirtualDesktop indicates which virtual desktops should be used by X. -# X will use the specified virtual desktop *and* the next one. In -# order for an external app to share a display with the X server, it -# needs to use the same virtual desktop. Valid values are integers 0 -# (default) or 1. - -# Option "VirtualDesktop" "1" - -# OverlayDepth is a 32-bit integer which is used to control overlay -# stacking order. The overlay with the lowest depth is in front of -# all others. This value has meaning only when multiple overlays are -# present on a display. - -# Option "OverlayDepth" "255" - -# OverlayCombineMode determines how the X overlay is combined with the -# overlay behind it during scanout. Available modes are: Opaque -# (default), SourceAlphaBlend, and PremultSourceAlphaBlend. This -# value has meaning only when an external process has created a -# display which is behind the X server. - -# Option "OverlayCombineMode" "PremultSourceAlphaBlend" - -# ARGBHWCursor controls whether the X driver uses an overlay to -# display 32-bit "true-color" cursors, or whether such cursors are -# emulated in software. Valid values are "true" (default) to enable -# hardware cursors, and "false" to disable them. - - Option "ARGBHWCursor" "false" - -# Use monitor section with identifier, enables explicit disabling - Option "Monitor-LVDS-1" "LVDS" - Option "Monitor-HDMI-1" "HDMI" -EndSection - -Section "ServerFlags" - - Option "DefaultServerLayout" "Default Layout" -# Set the basic blanking screen saver timeout in minutes. 0 to disable. - - Option "blank time" "0" - -# Set the DPMS timeouts. These are set here because they are global -# rather than screen-specific. These settings alone don't enable DPMS. -# It is enabled per-screen (or per-monitor), and even then only when -# the driver supports it. - - Option "standby time" "0" - Option "suspend time" "0" - Option "off time" "0" -EndSection - -Section "Monitor" - - Identifier "HDMI" - Option "Ignore" "false" - Option "DPMS" "off" - -# Default orientation -# Option "AboveOf" "LVDS" -# Option "Position" "0 0" - -# Explicitly choose a Resolution (check xrandr for available modes) -# Option "PreferredMode" "1280x720" - -EndSection - -Section "Monitor" - - Identifier "LVDS" - Option "Ignore" "false" - Option "DPMS" "off" - -# Note: It is not possible to use explicit modes here as the mode is inherited -# from the Linux framebuffer -# Check Framebuffer documentation: -# http://developer.toradex.com/knowledge-base/framebuffer-(linux) - -EndSection - -Section "Screen" -# NVIDIA uses only one screen, even in dual head mode -# the gluing logic is in the device section - - Identifier "Common Screen" - Device "Tegra" - -# This is the primary monitor - Monitor "LVDS" - - DefaultDepth 16 - -EndSection - -Section "ServerLayout" - Identifier "Default Layout" - - Screen "Common Screen" -EndSection - -Section "InputClass" - - Identifier "Fusion 7/10" - Driver "evdev" - MatchProduct "fusion_F0710A" - MatchDevicePath "/dev/input/event*" - -EndSection diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7.inc b/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7.inc deleted file mode 100644 index 6b46d9f..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7.inc +++ /dev/null @@ -1,163 +0,0 @@ -SUMMARY = "The X.Org X server" -HOMEPAGE = "http://www.x.org" -SECTION = "x11/base" -LICENSE = "MIT-X" -LIC_FILES_CHKSUM = "file://COPYING;md5=bc098b9774ed096943f6c37b5beeef13" - -# xf86-*-* packages depend on an X server built with the xfree86 DDX -# so we have a virtual to represent that: -# deprecated, we should use virtual/xserver instead -PROVIDES = "virtual/xserver-xf86" - -# Other packages tend to just care that there is *an* X server: -PROVIDES += "virtual/xserver" - -PE = "2" -INC_PR = "r8" - -XORG_PN = "xorg-server" -SRC_URI = " \ - ${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2 \ - file://macro_tweak.patch \ -" - -S = "${WORKDIR}/${XORG_PN}-${PV}" - -inherit autotools pkgconfig - -inherit distro_features_check -REQUIRED_DISTRO_FEATURES = "x11" - -PROTO_DEPS = "xorgproto" -LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl libgcrypt nettle" -DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} font-util" - -# Split out some modules and extensions from the main package -# These aren't needed for basic operations and only take up space: -# 32.0k libdri.so -# 91.0k libexa.so -# 336.0k libglx.so -# 1360k libint10.so -# 180.0k libwfb.so -# 320.0k libxaa.so -# 124.0k libxf1bpp.so -# 84.0k libxf4bpp.so -# librecord.so -# libextmod.so -# libdbe.so - -PACKAGES =+ "${PN}-security-policy \ - ${PN}-sdl \ - ${PN}-fbdev \ - ${PN}-xvfb \ - ${PN}-utils \ - ${PN}-xephyr \ - ${PN}-multimedia-modules \ - ${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-glx \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - ${PN}-module-libint10 \ - ${PN}-module-libafb \ - ${PN}-module-libwfb \ - ${PN}-module-libmfb \ - ${PN}-module-libcfb \ - ${PN}-module-exa \ - ${PN}-module-xaa \ - ${PN}-module-libxf1bpp \ - ${PN}-module-libxf4bpp" - -RRECOMMENDS_${PN} += "${PN}-security-policy xkeyboard-config rgb xserver-xf86-config xkbcomp" -RDEPENDS_${PN}-xvfb += "xkeyboard-config" -RDEPENDS_${PN}-module-exa = "${PN} (= ${EXTENDPKGV})" - -FILES_${PN} = "${bindir} ${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/modules/*.so ${libdir}/xorg/modules/*.so /etc/X11 ${libdir}/xorg/protocol.txt ${datadir}/X11/xorg.conf.d" -FILES_${PN}-dev += "${libdir}/xorg/modules/*.la ${libdir}/xorg/modules/*/*.la" -FILES_${PN}-doc += "${libdir}/X11/doc ${datadir}/X11/xkb/compiled/README.compiled ${localstatedir}/lib/xkb/README.compiled" -FILES_${PN}-dbg += "${libdir}/xorg/modules/.debug \ - ${libdir}/xorg/modules/*/.debug \ - ${libdir}/xorg/modules/*/*/.debug \ - " -FILES_${PN}-security-policy += "${libdir}/xserver/SecurityPolicy" -FILES_${PN}-sdl = "${bindir}/Xsdl" -FILES_${PN}-fbdev = "${bindir}/Xfbdev" -FILES_${PN}-xvfb = "${bindir}/Xvfb" -FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl" -FILES_${PN}-xephyr = "${bindir}/Xephyr" -FILES_${PN}-multimedia-modules = "${libdir}/xorg/modules/multimedia/*drv*" -FILES_${PN}-extension-dri = "${libdir}/xorg/modules/extensions/libdri.so" -FILES_${PN}-extension-dri2 = "${libdir}/xorg/modules/extensions/libdri2.so" -FILES_${PN}-extension-glx = "${libdir}/xorg/modules/extensions/libglx.so" -FILES_${PN}-extension-record = "${libdir}/xorg/modules/extensions/librecord.so" -FILES_${PN}-extension-extmod = "${libdir}/xorg/modules/extensions/libextmod.so" -FILES_${PN}-extension-dbe = "${libdir}/xorg/modules/extensions/libdbe.so" -FILES_${PN}-module-libint10 = "${libdir}/xorg/modules/libint10.so" -FILES_${PN}-module-libafb = "${libdir}/xorg/modules/libafb.so" -FILES_${PN}-module-libwfb = "${libdir}/xorg/modules/libwfb.so" -FILES_${PN}-module-libmfb = "${libdir}/xorg/modules/libmfb.so" -FILES_${PN}-module-libcfb = "${libdir}/xorg/modules/libcfb.so" -FILES_${PN}-module-exa = "${libdir}/xorg/modules/libexa.so" -FILES_${PN}-module-xaa = "${libdir}/xorg/modules/libxaa.so" -FILES_${PN}-module-libxf1bpp = "${libdir}/xorg/modules/libxf1bpp.so" -FILES_${PN}-module-libxf4bpp = "${libdir}/xorg/modules/libxf4bpp.so" - -EXTRA_OECONF += "--with-fop=no \ - --without-xmlto \ - --with-pic \ - --disable-static \ - --disable-xinerama \ - --disable-record \ - --disable-dmx \ - --disable-xnest \ - --enable-xvfb \ - --enable-composite \ - --without-dtrace \ - --with-int10=x86emu \ - --sysconfdir=/etc/X11 \ - --localstatedir=/var \ - --with-xkb-output=/var/lib/xkb \ - ac_cv_file__usr_share_sgml_X11_defs_ent=no \ -" - -PACKAGECONFIG ??= "udev ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri dri2 glx', '', d)}" -PACKAGECONFIG[udev] = "--enable-config-udev,--disable-config-udev,udev" -PACKAGECONFIG[dri] = "--enable-dri,--disable-dri,xorgproto virtual/mesa xorgproto" -PACKAGECONFIG[dri2] = "--enable-dri2,--disable-dri2,xorgproto" -PACKAGECONFIG[glx] = "--enable-glx --enable-glx-tls,--disable-glx,xorgproto virtual/libgl virtual/libx11" - -# for T20/T30 we don't want xinerama -PACKAGECONFIG_remove = "xinerama" - -do_install_append () { - # Its assumed base-files creates this for us - rmdir ${D}${localstatedir}/log/ -} - -# Add runtime provides for the ABI versions of the video and input subsystems, -# so that drivers can depend on the relevant version. -python populate_packages_prepend() { - import subprocess - - # Set PKG_CONFIG_PATH so pkg-config looks at the .pc files that are going - # into the new package, not the staged ones. - newenv = dict(os.environ) - newenv["PKG_CONFIG_PATH"] = d.expand("${PKGD}${libdir}/pkgconfig/") - - def get_abi(name): - abis = { - "video": "abi_videodrv", - "input": "abi_xinput" - } - p = subprocess.Popen(args="pkg-config --variable=%s xorg-server" % abis[name], - shell=True, env=newenv, stdout=subprocess.PIPE) - stdout, stderr = p.communicate() - output = stdout.decode("utf-8").split(".")[0] - mlprefix = d.getVar('MLPREFIX', True) or '' - return "%sxorg-abi-%s-%s" % (mlprefix, name, output) - - pn = d.getVar("PN", True) - d.appendVar("RPROVIDES_" + pn, " " + get_abi("input")) - d.appendVar("RPROVIDES_" + pn, " " + get_abi("video")) -} diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7/Revert_Use_new_pixman_glyph_cache_t_API_that_will_be_in_pixman0.28.0.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7/Revert_Use_new_pixman_glyph_cache_t_API_that_will_be_in_pixman0.28.0.patch deleted file mode 100644 index 8c7c0ca..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg-1.14.7/Revert_Use_new_pixman_glyph_cache_t_API_that_will_be_in_pixman0.28.0.patch +++ /dev/null @@ -1,268 +0,0 @@ -This patch has issues with the tegra xdriver: -Some text, i.e the lxpanel clock, lxterminal terminal content is not visible. -Tested with libpixman 0.29.2, 0.30.0 -Revert: -From 9cbcb5bd6a5360a128d15b77a02d8d3351f74366 Mon Sep 17 00:00:00 2001 -From: Søren Sandmann Pedersen <ssp@redhat.com> -Date: Wed, 30 May 2012 09:19:08 +0000 -Subject: Use new pixman_glyph_cache_t API that will be in pixman 0.28.0 - -This new API allows glyphs to be cached in a data structure in pixman, -and entire glyph strings to be composited in one go. - -Also bump pixman dependency to 0.27.2. - -Results from the cairo peformance test suite running against Xvfb with -a screen size of 1680x1050@32bpp: - -Speedups -======== - xlib firefox-talos-gfx 12416.63 -> 3603.93 3.45x speedup -██▌ - xlib xfce4-terminal-a1 1727.57 -> 1048.85: 1.65x speedup -▋ - xlib evolution 1370.49 -> 869.34: 1.58x speedup -▋ - xlib gnome-terminal-vim 1832.83 -> 1251.94: 1.46x speedup -▌ - xlib poppler 1519.70 -> 1204.05: 1.26x speedup -▎ - xlib firefox-planet-gnome 6982.55 -> 5598.16: 1.25x speedup -▎ - xlib ocitysmap 1142.77 -> 1071.53: 1.07x speedup -▏ - -No slowdowns were reported. - -Results of x11perf -aa10text: - -Before: - - 8000000 reps @ 0.0007 msec (1450000.0/sec) - 8000000 reps @ 0.0007 msec (1460000.0/sec) - 8000000 reps @ 0.0007 msec (1460000.0/sec) - 8000000 reps @ 0.0007 msec (1470000.0/sec) - 8000000 reps @ 0.0007 msec (1480000.0/sec) - 40000000 trep @ 0.0007 msec (1460000.0/sec) - -After: - - 32000000 reps @ 0.0002 msec (4910000.0/sec) - 32000000 reps @ 0.0002 msec (4830000.0/sec) - 32000000 reps @ 0.0002 msec (4890000.0/sec) - 32000000 reps @ 0.0002 msec (4830000.0/sec) - 32000000 reps @ 0.0002 msec (4900000.0/sec) - 160000000 trep @ 0.0002 msec (4870000.0/sec) - -Version 2: Destroy the glyph cache at server regen time - -Acked-by: Aaron Plattner <aplattner@nvidia.com> -Reviewed-by: Keith Packard <keithp@keithp.com> -Signed-off-by: Soren Sandmann <ssp@redhat.com> - -diff -Naur xorg-server-1.14.0.orig/configure.ac xorg-server-1.14.0/configure.ac ---- xorg-server-1.14.0.orig/configure.ac 2013-07-20 00:33:38.501103192 +0200 -+++ xorg-server-1.14.0/configure.ac 2013-07-21 10:31:15.420487572 +0200 -@@ -807,7 +807,7 @@ - LIBUDEV="libudev >= 143" - LIBSELINUX="libselinux >= 2.0.86" - LIBDBUS="dbus-1 >= 1.0" --LIBPIXMAN="pixman-1 >= 0.27.2" -+LIBPIXMAN="pixman-1 >= 0.21.8" - - dnl Pixman is always required, but we separate it out so we can link - dnl specific modules against it -diff -Naur xorg-server-1.14.0.orig/fb/fb.h xorg-server-1.14.0/fb/fb.h ---- xorg-server-1.14.0.orig/fb/fb.h 2012-10-27 03:04:34.000000000 +0200 -+++ xorg-server-1.14.0/fb/fb.h 2013-07-21 10:31:15.421487572 +0200 -@@ -1344,9 +1344,6 @@ - extern _X_EXPORT Bool - fbPictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats); - --extern _X_EXPORT void --fbDestroyGlyphCache(void); -- - /* - * fbpixmap.c - */ -diff -Naur xorg-server-1.14.0.orig/fb/fbpict.c xorg-server-1.14.0/fb/fbpict.c ---- xorg-server-1.14.0.orig/fb/fbpict.c 2012-10-27 03:04:34.000000000 +0200 -+++ xorg-server-1.14.0/fb/fbpict.c 2013-07-21 10:31:15.421487572 +0200 -@@ -70,156 +70,6 @@ - free_pixman_pict(pDst, dest); - } - --static pixman_glyph_cache_t *glyphCache; -- --void --fbDestroyGlyphCache(void) --{ -- if (glyphCache) -- { -- pixman_glyph_cache_destroy (glyphCache); -- glyphCache = NULL; -- } --} -- --static void --fbUnrealizeGlyph(ScreenPtr pScreen, -- GlyphPtr pGlyph) --{ -- if (glyphCache) -- pixman_glyph_cache_remove (glyphCache, pGlyph, NULL); --} -- --static void --fbGlyphs(CARD8 op, -- PicturePtr pSrc, -- PicturePtr pDst, -- PictFormatPtr maskFormat, -- INT16 xSrc, -- INT16 ySrc, int nlist, -- GlyphListPtr list, -- GlyphPtr *glyphs) --{ --#define N_STACK_GLYPHS 512 -- ScreenPtr pScreen = pDst->pDrawable->pScreen; -- pixman_glyph_t stack_glyphs[N_STACK_GLYPHS]; -- pixman_glyph_t *pglyphs = stack_glyphs; -- pixman_image_t *srcImage, *dstImage; -- int srcXoff, srcYoff, dstXoff, dstYoff; -- GlyphPtr glyph; -- int n_glyphs; -- int x, y; -- int i, n; -- int xDst = list->xOff, yDst = list->yOff; -- -- miCompositeSourceValidate(pSrc); -- -- n_glyphs = 0; -- for (i = 0; i < nlist; ++i) -- n_glyphs += list[i].len; -- -- if (!glyphCache) -- glyphCache = pixman_glyph_cache_create(); -- -- pixman_glyph_cache_freeze (glyphCache); -- -- if (n_glyphs > N_STACK_GLYPHS) { -- if (!(pglyphs = malloc (n_glyphs * sizeof (pixman_glyph_t)))) -- goto out; -- } -- -- i = 0; -- x = y = 0; -- while (nlist--) { -- x += list->xOff; -- y += list->yOff; -- n = list->len; -- while (n--) { -- const void *g; -- -- glyph = *glyphs++; -- -- if (!(g = pixman_glyph_cache_lookup (glyphCache, glyph, NULL))) { -- pixman_image_t *glyphImage; -- PicturePtr pPicture; -- int xoff, yoff; -- -- pPicture = GetGlyphPicture(glyph, pScreen); -- if (!pPicture) { -- n_glyphs--; -- goto next; -- } -- -- if (!(glyphImage = image_from_pict(pPicture, FALSE, &xoff, &yoff))) -- goto out; -- -- g = pixman_glyph_cache_insert(glyphCache, glyph, NULL, -- glyph->info.x, -- glyph->info.y, -- glyphImage); -- -- free_pixman_pict(pPicture, glyphImage); -- -- if (!g) -- goto out; -- } -- -- pglyphs[i].x = x; -- pglyphs[i].y = y; -- pglyphs[i].glyph = g; -- i++; -- -- next: -- x += glyph->info.xOff; -- y += glyph->info.yOff; -- } -- list++; -- } -- -- if (!(srcImage = image_from_pict(pSrc, FALSE, &srcXoff, &srcYoff))) -- goto out; -- -- if (!(dstImage = image_from_pict(pDst, TRUE, &dstXoff, &dstYoff))) -- goto out_free_src; -- -- if (maskFormat) { -- pixman_format_code_t format; -- pixman_box32_t extents; -- int x, y; -- -- format = maskFormat->format | (maskFormat->depth << 24); -- -- pixman_glyph_get_extents(glyphCache, n_glyphs, pglyphs, &extents); -- -- x = extents.x1; -- y = extents.y1; -- -- pixman_composite_glyphs(op, srcImage, dstImage, format, -- xSrc + srcXoff + xDst, ySrc + srcYoff + yDst, -- x, y, -- x + dstXoff, y + dstYoff, -- extents.x2 - extents.x1, -- extents.y2 - extents.y1, -- glyphCache, n_glyphs, pglyphs); -- } -- else { -- pixman_composite_glyphs_no_mask(op, srcImage, dstImage, -- xSrc + srcXoff - xDst, ySrc + srcYoff - yDst, -- dstXoff, dstYoff, -- glyphCache, n_glyphs, pglyphs); -- } -- -- free_pixman_pict(pDst, dstImage); -- --out_free_src: -- free_pixman_pict(pSrc, srcImage); -- --out: -- pixman_glyph_cache_thaw(glyphCache); -- if (pglyphs != stack_glyphs) -- free(pglyphs); --} -- - static pixman_image_t * - create_solid_fill_image(PicturePtr pict) - { -@@ -507,8 +357,7 @@ - return FALSE; - ps = GetPictureScreen(pScreen); - ps->Composite = fbComposite; -- ps->Glyphs = fbGlyphs; -- ps->UnrealizeGlyph = fbUnrealizeGlyph; -+ ps->Glyphs = miGlyphs; - ps->CompositeRects = miCompositeRects; - ps->RasterizeTrapezoid = fbRasterizeTrapezoid; - ps->Trapezoids = fbTrapezoids; -diff -Naur xorg-server-1.14.0.orig/fb/fbscreen.c xorg-server-1.14.0/fb/fbscreen.c ---- xorg-server-1.14.0.orig/fb/fbscreen.c 2012-10-27 03:04:34.000000000 +0200 -+++ xorg-server-1.14.0/fb/fbscreen.c 2013-07-21 10:31:15.421487572 +0200 -@@ -32,7 +32,6 @@ - int d; - DepthPtr depths = pScreen->allowedDepths; - -- fbDestroyGlyphCache(); - for (d = 0; d < pScreen->numDepths; d++) - free(depths[d].vids); - free(depths); diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch deleted file mode 100644 index 9c9f595..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch +++ /dev/null @@ -1,48 +0,0 @@ -Upstream-Status: Backport -Signed-off-by: Ross Burton <ross.burton@intel.com> - -From 21b896939c5bb242f3aacc37baf12379e43254b6 Mon Sep 17 00:00:00 2001 -From: Egbert Eich <eich@freedesktop.org> -Date: Tue, 3 Mar 2015 16:27:05 +0100 -Subject: symbols: Fix sdksyms.sh to cope with gcc5 - -Gcc5 adds additional lines stating line numbers before and -after __attribute__() which need to be skipped. - -Signed-off-by: Egbert Eich <eich@freedesktop.org> -Tested-by: Daniel Stone <daniels@collabora.com> -Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> - -diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh -index 2305073..05ac410 100755 ---- a/hw/xfree86/sdksyms.sh -+++ b/hw/xfree86/sdksyms.sh -@@ -350,13 +350,25 @@ BEGIN { - if (sdk) { - n = 3; - -+ # skip line numbers GCC 5 adds before __attribute__ -+ while ($n == "" || $0 ~ /^# [0-9]+ "/) { -+ getline; -+ n = 1; -+ } -+ - # skip attribute, if any - while ($n ~ /^(__attribute__|__global)/ || - # skip modifiers, if any - $n ~ /^\*?(unsigned|const|volatile|struct|_X_EXPORT)$/ || - # skip pointer -- $n ~ /^[a-zA-Z0-9_]*\*$/) -+ $n ~ /^[a-zA-Z0-9_]*\*$/) { - n++; -+ # skip line numbers GCC 5 adds after __attribute__ -+ while ($n == "" || $0 ~ /^# [0-9]+ "/) { -+ getline; -+ n = 1; -+ } -+ } - - # type specifier may not be set, as in - # extern _X_EXPORT unsigned name(...) --- -cgit v0.10.2 diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/aarch64.patch b/recipes-graphics/xorg-xserver/xserver-xorg/aarch64.patch deleted file mode 100644 index 045e24a..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/aarch64.patch +++ /dev/null @@ -1,35 +0,0 @@ -Subject: Add AArch64 support to xserver-xorg -Author: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org> - -lnx_video.c parts are not existing in 1.14 branch. - -Xserver was checked in AArch64 fastmodel (commercial one with graphics support). - -http://patchwork.freedesktop.org/patch/12785/ - -Upstream-Status: Pending - ---- - include/servermd.h | 7 +++++++ - 1 files changed, 7 insertions(+), 0 deletions(-) - ---- xorg-server-1.13.1.orig/include/servermd.h -+++ xorg-server-1.13.1/include/servermd.h -@@ -243,10 +243,17 @@ SOFTWARE. - #define BITMAP_BIT_ORDER LSBFirst - #define GLYPHPADBYTES 4 - /* ???? */ - #endif /* AMD64 */ - -+#if defined(__aarch64__) || defined(aarch64) || defined(__aarch64) -+#define IMAGE_BYTE_ORDER MSBFirst -+#define BITMAP_BIT_ORDER MSBFirst -+#define GLYPHPADBYTES 4 -+/* ???? */ -+#endif /* AArch64 */ -+ - #if defined(SVR4) && (defined(__i386__) || defined(__i386) ) || \ - defined(__alpha__) || defined(__alpha) || \ - defined(__i386__) || \ - defined(__s390x__) || defined(__s390__) - diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch b/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch deleted file mode 100644 index 2f98bb8..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch +++ /dev/null @@ -1,22 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -diff --git a/configure.ac b/configure.ac -index b3b752c..600500b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -523,13 +523,9 @@ dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d, - dnl otherwise uses standard subdirectories of FONTROOTDIR. When cross - dnl compiling, assume default font path uses standard FONTROOTDIR directories. - DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" --if test "$cross_compiling" != yes; then -- AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d], -- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'], -- [case $host_os in -+ case $host_os in - darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; -- esac]) --fi -+ esac - AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), - [ FONTPATH="$withval" ], - [ FONTPATH="${DEFAULT_FONT_PATH}" ]) diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch b/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch deleted file mode 100644 index 2f62972..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Pending - -Index: git/os/osdep.h -=================================================================== ---- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100 -+++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100 -@@ -92,7 +92,7 @@ - * like sysconf(_SC_OPEN_MAX) is not supported. - */ - --#if OPEN_MAX <= 256 -+#if 0 - #define MAXSOCKS (OPEN_MAX - 1) - #else - #define MAXSOCKS 256 diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch b/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch deleted file mode 100644 index dcae0b5..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch +++ /dev/null @@ -1,25 +0,0 @@ -This is the revised version of files/macro_tweak.patch for -xorg-server 1.8.99.904 and newer. - -Upstream-Status: Pending - -Signed-off-by: Yu Ke <ke.yu@intel.com> - -diff --git a/xorg-server.m4 b/xorg-server.m4 -index bdecf62..040fdb8 100644 ---- a/xorg-server.m4 -+++ b/xorg-server.m4 -@@ -28,10 +28,12 @@ dnl - # Checks for the MACRO define in xorg-server.h (from the sdk). If it - # is defined, then add the given PROTO to $REQUIRED_MODULES. - -+m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR) -+ - AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ - AC_REQUIRE([PKG_PROG_PKG_CONFIG]) - SAVE_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" -+ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include "xorg-server.h" - #if !defined $1 diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/mips64-compiler.patch b/recipes-graphics/xorg-xserver/xserver-xorg/mips64-compiler.patch deleted file mode 100644 index 168368e..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/mips64-compiler.patch +++ /dev/null @@ -1,29 +0,0 @@ -on mips64/n64 pointers are 64bit therefore the pointer conversions to int dont work well -so we end up with incompatible conversion errors - -This patch choses the right values for mips64 - -Signed-off-by: Khem Raj <raj.khem@gmail.com> - -Upstream-Status: Pending -Index: xorg-server-1.13.0/hw/xfree86/common/compiler.h -=================================================================== ---- xorg-server-1.13.0-orig/hw/xfree86/common/compiler.h 2012-06-14 23:04:29.000000000 +0300 -+++ xorg-server-1.13.0/hw/xfree86/common/compiler.h 2012-11-08 10:06:50.865831783 +0200 -@@ -101,6 +101,7 @@ - #if defined(NO_INLINE) || defined(DO_PROTOTYPES) - #if !defined(__arm__) - #if !defined(__sparc__) && !defined(__sparc) && !defined(__arm32__) && !defined(__nds32__) \ -+ && !defined(__mips64) \ - && !(defined(__alpha__) && defined(linux)) \ - && !(defined(__ia64__) && defined(linux)) \ - -@@ -721,7 +722,7 @@ - } - - #elif defined(__mips__) || (defined(__arm32__) && !defined(__linux__)) --#ifdef __arm32__ -+#if defined (__arm32__) || defined (__mips64) - #define PORT_SIZE long - #else - #define PORT_SIZE short diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/xorg-CVE-2013-6424.patch b/recipes-graphics/xorg-xserver/xserver-xorg/xorg-CVE-2013-6424.patch deleted file mode 100644 index 7c61530..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/xorg-CVE-2013-6424.patch +++ /dev/null @@ -1,31 +0,0 @@ -This patch comes from: -http://lists.x.org/archives/xorg-devel/2013-October/037996.html - -Upstream-Status: Backport - -Signed-off-by: Baogen shang <baogen.shang@windriver.com> -diff -Naur xorg-server-1.14.0-orig/exa/exa_render.c xorg-server-1.14.0/exa/exa_render.c ---- xorg-server-1.14.0-orig/exa/exa_render.c 2014-02-27 14:32:38.000000000 +0800 -+++ xorg-server-1.14.0/exa/exa_render.c 2014-02-27 15:46:59.000000000 +0800 -@@ -1141,7 +1141,8 @@ - - exaPrepareAccess(pPicture->pDrawable, EXA_PREPARE_DEST); - for (; ntrap; ntrap--, traps++) -- (*ps->RasterizeTrapezoid) (pPicture, traps, -bounds.x1, -bounds.y1); -+ if (xTrapezoidValid(traps)) -+ (*ps->RasterizeTrapezoid) (pPicture, traps, -bounds.x1, -bounds.y1); - exaFinishAccess(pPicture->pDrawable, EXA_PREPARE_DEST); - - xRel = bounds.x1 + xSrc - xDst; -diff -Naur xorg-server-1.14.0-orig/render/picture.h xorg-server-1.14.0/render/picture.h ---- xorg-server-1.14.0-orig/render/picture.h 2014-02-27 14:32:26.000000000 +0800 -+++ xorg-server-1.14.0/render/picture.h 2014-02-27 15:48:13.000000000 +0800 -@@ -211,7 +211,7 @@ - /* whether 't' is a well defined not obviously empty trapezoid */ - #define xTrapezoidValid(t) ((t)->left.p1.y != (t)->left.p2.y && \ - (t)->right.p1.y != (t)->right.p2.y && \ -- (int) ((t)->bottom - (t)->top) > 0) -+ ((t)->bottom > (t)->top)) - - /* - * Standard NTSC luminance conversions: diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_1.14.7.bb b/recipes-graphics/xorg-xserver/xserver-xorg_1.14.7.bb deleted file mode 100644 index d7ffd7b..0000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg_1.14.7.bb +++ /dev/null @@ -1,56 +0,0 @@ -require recipes-graphics/xorg-xserver/xserver-xorg-1.14.7.inc - -COMPATIBLE_MACHINE = "(tegra2|tegra3)" - -LIC_FILES_CHKSUM = "file://COPYING;md5=bc098b9774ed096943f6c37b5beeef13" - -# Misc build failure for master HEAD -SRC_URI += "\ - file://crosscompile.patch \ - file://fix_open_max_preprocessor_error.patch \ - file://mips64-compiler.patch \ - file://aarch64.patch \ - file://xorg-CVE-2013-6424.patch \ - file://0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch \ -" -SRC_URI_append_tegra = " file://Revert_Use_new_pixman_glyph_cache_t_API_that_will_be_in_pixman0.28.0.patch" - -SRC_URI[md5sum] = "0c285a813a6c3291c88d5a2b710aecb1" -SRC_URI[sha256sum] = "fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f" - -# HACK: during do_rootfs opkg takes the latest and greatest available -# in any feed, e.g. one built for another machine without prefered version -# rather than what PREFERRED_VERSION puts in the MACHINE_ARCH feed -# so we set the recipe epoch here. Thus for our architecture we're -# always latest and greatest. -PE_tegra = "99" -PROVIDES_${PN} = "virtual/xserver" - -PACKAGE_ARCH_tegra = "${MACHINE_ARCH}" - -# These extensions are now integrated into the server, so declare the migration -# path for in-place upgrades. - -RREPLACES_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " -RPROVIDES_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " -RCONFLICTS_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " - -# provided by xf86-input-evdev_2.10.0 -do_install_append () { - rm -f ${D}/usr/share/X11/xorg.conf.d/10-evdev.conf -}
\ No newline at end of file diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_1.20%.bbappend b/recipes-graphics/xorg-xserver/xserver-xorg_1.20%.bbappend index 2c5dd09..e33bf18 100644 --- a/recipes-graphics/xorg-xserver/xserver-xorg_1.20%.bbappend +++ b/recipes-graphics/xorg-xserver/xserver-xorg_1.20%.bbappend @@ -5,4 +5,4 @@ PACKAGE_ARCH_tegra124m = "${MACHINE_ARCH}" COMPATIBLE_MACHINE_tegra124m = "(apalis-tk1-mainline)" -PACKAGECONFIG_tegra124m ?= "dri2 dri3 xshmfence glamor xwayland udev ${XORG_CRYPTO} " +PACKAGECONFIG_tegra124m ?= "dri2 dri3 xshmfence glamor glx xwayland udev ${XORG_CRYPTO} " |