diff options
Diffstat (limited to 'poky/meta/recipes-graphics')
26 files changed, 220 insertions, 54 deletions
diff --git a/poky/meta/recipes-graphics/drm/libdrm/0001-meson-Also-search-for-rst2man.py.patch b/poky/meta/recipes-graphics/drm/libdrm/0001-meson-Also-search-for-rst2man.py.patch deleted file mode 100644 index 67fafd40c..000000000 --- a/poky/meta/recipes-graphics/drm/libdrm/0001-meson-Also-search-for-rst2man.py.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 4129a8c6911b6b0ef3665cb167da6b635c29614d Mon Sep 17 00:00:00 2001 -From: Wang Mingyu <wangmy@cn.fujitsu.com> -Date: Mon, 8 Feb 2021 17:30:52 +0900 -Subject: [PATCH] meson: Also search for rst2man.py - -That's what upstream docutils installs by default. - -Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/drm/-/commit/62b9a3eee9bdaafa766e92d5bebeb4e59845c45a] - -Signed-off-by: Heiko Becker's avatarHeiko Becker <heirecka@exherbo.org> ---- - meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index a4d8d70..07d2e08 100644 ---- a/meson.build -+++ b/meson.build -@@ -261,7 +261,7 @@ else - endif - - with_man_pages = get_option('man-pages') --prog_rst2man = find_program('rst2man', required: with_man_pages == 'true') -+prog_rst2man = find_program('rst2man', 'rst2man.py', required: with_man_pages == 'true') - with_man_pages = with_man_pages != 'false' and prog_rst2man.found() - - config.set10('HAVE_VISIBILITY', --- -2.25.1 - diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.104.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.105.bb index ff869d6db..8cb82ad12 100644 --- a/poky/meta/recipes-graphics/drm/libdrm_2.4.104.bb +++ b/poky/meta/recipes-graphics/drm/libdrm_2.4.105.bb @@ -11,10 +11,9 @@ PROVIDES = "drm" DEPENDS = "libpthread-stubs" SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.xz \ - file://0001-meson-Also-search-for-rst2man.py.patch \ " -SRC_URI[sha256sum] = "d66ad8b5c2441015ac1333e40137bb803c3bde3612ff040286fcc12158ea1bcb" +SRC_URI[sha256sum] = "1d1d024b7cadc63e2b59cddaca94f78864940ab440843841113fbac6afaf2a46" inherit meson pkgconfig manpages diff --git a/poky/meta/recipes-graphics/glslang/glslang/0001-generate-glslang-pkg-config.patch b/poky/meta/recipes-graphics/glslang/glslang/0001-generate-glslang-pkg-config.patch index ef092f17a..cddd33097 100644 --- a/poky/meta/recipes-graphics/glslang/glslang/0001-generate-glslang-pkg-config.patch +++ b/poky/meta/recipes-graphics/glslang/glslang/0001-generate-glslang-pkg-config.patch @@ -34,14 +34,14 @@ index 00000000..64b6882d --- /dev/null +++ b/glslang/glslang.pc.cmake.in @@ -0,0 +1,11 @@ -+ prefix=@CMAKE_INSTALL_PREFIX@ -+ exec_prefix=@CMAKE_INSTALL_PREFIX@ -+ libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ -+ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ -+ -+ Name: @PROJECT_NAME@ -+ Description: OpenGL and OpenGL ES shader front end and validator -+ Requires: -+ Version: @GLSLANG_VERSION@ -+ Libs: -L${libdir} -lglslang -lOSDependent -lHLSL -lOGLCompiler -lSPVRemapper -+ Cflags: -I${includedir} ++prefix=@CMAKE_INSTALL_PREFIX@ ++exec_prefix=@CMAKE_INSTALL_PREFIX@ ++libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@ ++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ ++ ++Name: @PROJECT_NAME@ ++Description: OpenGL and OpenGL ES shader front end and validator ++Requires: ++Version: @GLSLANG_VERSION@ ++Libs: -L${libdir} -lglslang -lOSDependent -lHLSL -lOGLCompiler -lSPVRemapper ++Cflags: -I${includedir} diff --git a/poky/meta/recipes-graphics/glslang/glslang_11.2.0.bb b/poky/meta/recipes-graphics/glslang/glslang_11.4.0.bb index 902f7345f..fd4cf6d53 100644 --- a/poky/meta/recipes-graphics/glslang/glslang_11.2.0.bb +++ b/poky/meta/recipes-graphics/glslang/glslang_11.4.0.bb @@ -8,7 +8,7 @@ HOMEPAGE = "https://www.khronos.org/opengles/sdk/tools/Reference-Compiler" LICENSE = "BSD-3-Clause & BSD-2-Clause & MIT & Apache-2.0 & GPL-3-with-bison-exception" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c5ce49c0456e9b413b98a4368c378229" -SRCREV = "5421877c380d5f92c1965c7a94620dac861297dd" +SRCREV = "18eef33bd7a4bf5ad8c69f99cb72022608cf6e73" SRC_URI = "git://github.com/KhronosGroup/glslang.git;protocol=https \ file://0001-generate-glslang-pkg-config.patch" UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+(\.\d+)+)$" diff --git a/poky/meta/recipes-graphics/images/core-image-weston-ptest-all.bb b/poky/meta/recipes-graphics/images/core-image-weston-ptest-all.bb new file mode 100644 index 000000000..a622779e6 --- /dev/null +++ b/poky/meta/recipes-graphics/images/core-image-weston-ptest-all.bb @@ -0,0 +1,21 @@ +require core-image-weston-sdk.bb +require conf/distro/include/ptest-packagelists.inc + +DESCRIPTION += "Also includes ptest packages." + +# Include the full set of ptests +IMAGE_INSTALL += "${PTESTS_FAST} ${PTESTS_SLOW}" + +# This image is sufficiently large (~1.8GB) that we need to be careful that it fits in a live +# image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the +# box) and explicitly add just 1100MB. +# strace-ptest in particular needs more than 500MB +IMAGE_OVERHEAD_FACTOR = "1.0" +IMAGE_ROOTFS_EXTRA_SPACE = "1124288" + +# ptests need more memory than standard to avoid the OOM killer +# also lttng-tools needs /tmp that has at least 1G +QB_MEM = "-m 2048" + +# Sadly at the moment the full set of ptests is not robust enough and sporadically fails in random places +PTEST_EXPECT_FAILURE = "1" diff --git a/poky/meta/recipes-graphics/images/core-image-weston-ptest-fast.bb b/poky/meta/recipes-graphics/images/core-image-weston-ptest-fast.bb new file mode 100644 index 000000000..df02befb6 --- /dev/null +++ b/poky/meta/recipes-graphics/images/core-image-weston-ptest-fast.bb @@ -0,0 +1,20 @@ +require core-image-weston-sdk.bb +require conf/distro/include/ptest-packagelists.inc + +# Include only fast (< 30 sec) ptests +IMAGE_INSTALL += "${PTESTS_FAST}" + +DESCRIPTION += "Also includes ptest packages with fast execution times to allow for more automated QA." + +# This image is sufficiently large (~1.8GB) that it can't actually fit in a live +# image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the +# box) and explicitly add just 1500MB. +# strace-ptest in particular needs more than 500MB +IMAGE_OVERHEAD_FACTOR = "1.0" +IMAGE_ROOTFS_EXTRA_SPACE = "1524288" + +# ptests need more memory than standard to avoid the OOM killer +QB_MEM = "-m 1024" + +# Sadly at the moment the fast set of ptests is not robust enough and sporadically fails in a couple of places +PTEST_EXPECT_FAILURE = "1" diff --git a/poky/meta/recipes-graphics/images/core-image-weston-sdk.bb b/poky/meta/recipes-graphics/images/core-image-weston-sdk.bb new file mode 100644 index 000000000..f5f7dade5 --- /dev/null +++ b/poky/meta/recipes-graphics/images/core-image-weston-sdk.bb @@ -0,0 +1,11 @@ +require core-image-weston.bb + +DESCRIPTION = "Image with Weston support that includes everything within \ +core-image-weston plus meta-toolchain, development headers and libraries to \ +form a standalone SDK." + +IMAGE_FEATURES += "dev-pkgs tools-sdk \ + tools-debug eclipse-debug tools-profile tools-testapps debug-tweaks ssh-server-openssh" + +IMAGE_INSTALL += "kernel-devsrc" + diff --git a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb index b6efc6bca..0bd6af8db 100644 --- a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb +++ b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb @@ -29,7 +29,7 @@ RCONFLICTS_${PN} += "jpeg" inherit cmake pkgconfig -export NASMENV = "--debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" +export NASMENV = "--reproducible --debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" # Add nasm-native dependency consistently for all build arches is hard EXTRA_OECMAKE_append_class-native = " -DWITH_SIMD=False" diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.10.0.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.11.0.bb index 5c6abeafe..5c6abeafe 100644 --- a/poky/meta/recipes-graphics/libva/libva-initial_2.10.0.bb +++ b/poky/meta/recipes-graphics/libva/libva-initial_2.11.0.bb diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.10.0.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.11.1.bb index 828f4fb31..096d80b68 100644 --- a/poky/meta/recipes-graphics/libva/libva-utils_2.10.0.bb +++ b/poky/meta/recipes-graphics/libva/libva-utils_2.11.1.bb @@ -14,8 +14,8 @@ SECTION = "x11" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" -SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.10-branch" -SRCREV = "f112ee75fcd1472131b20f901b93f6ac1d293fad" +SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.11-branch" +SRCREV = "c0145a895ebe9b24cde5c441733f90482f1e3d71" S = "${WORKDIR}/git" UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))$" diff --git a/poky/meta/recipes-graphics/libva/libva.inc b/poky/meta/recipes-graphics/libva/libva.inc index d251afa12..43d916cd1 100644 --- a/poky/meta/recipes-graphics/libva/libva.inc +++ b/poky/meta/recipes-graphics/libva/libva.inc @@ -18,7 +18,7 @@ LICENSE = "MIT" SRC_URI = "https://github.com/intel/libva/releases/download/${PV}/libva-${PV}.tar.bz2" LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" -SRC_URI[sha256sum] = "fa81e35b50d9818fce5ec9eeeeff08a24a8864ceeb9a5c8e7ae4446eacfc0236" +SRC_URI[sha256sum] = "6e361117038b571ad4741d38c9280db8c140b17e76e8c01fc7a4d608d3ed7d5d" S = "${WORKDIR}/libva-${PV}" diff --git a/poky/meta/recipes-graphics/libva/libva_2.10.0.bb b/poky/meta/recipes-graphics/libva/libva_2.11.0.bb index 4d3fa5096..4d3fa5096 100644 --- a/poky/meta/recipes-graphics/libva/libva_2.10.0.bb +++ b/poky/meta/recipes-graphics/libva/libva_2.11.0.bb diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.1.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.3.bb index dff79f0be..dff79f0be 100644 --- a/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.1.bb +++ b/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.3.bb diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index caf3c62ad..a85f94c75 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -21,7 +21,7 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \ " -SRC_URI[sha256sum] = "379fc984459394f2ab2d84049efdc3a659869dc1328ce72ef0598506611712bb" +SRC_URI[sha256sum] = "565c6f4bd2d5747b919454fc1d439963024fc78ca56fd05158c3b2cde2f6912b" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb b/poky/meta/recipes-graphics/mesa/mesa_21.0.3.bb index 8c584d8e9..8c584d8e9 100644 --- a/poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb +++ b/poky/meta/recipes-graphics/mesa/mesa_21.0.3.bb diff --git a/poky/meta/recipes-graphics/pango/pango_1.48.2.bb b/poky/meta/recipes-graphics/pango/pango_1.48.2.bb index 1dcb43b5e..aa279bb50 100644 --- a/poky/meta/recipes-graphics/pango/pango_1.48.2.bb +++ b/poky/meta/recipes-graphics/pango/pango_1.48.2.bb @@ -18,6 +18,8 @@ inherit gnomebase gtk-doc ptest-gnome upstream-version-is-even gobject-introspec GIR_MESON_ENABLE_FLAG = "enabled" GIR_MESON_DISABLE_FLAG = "disabled" +SRC_URI += "file://run-ptest" + SRC_URI[archive.sha256sum] = "d21f8b30dc8abdfc55de25656ecb88dc1105eeeb315e5e2a980dcef8010c2c80" DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi" diff --git a/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb b/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb index 5a8c62e64..4eb0cefff 100644 --- a/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb +++ b/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb @@ -21,3 +21,5 @@ S = "${WORKDIR}/git" inherit cmake EXTRA_OECMAKE = "-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_TESTS=OFF -DASSIMP_LIB_INSTALL_DIR=${baselib}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch b/poky/meta/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch new file mode 100644 index 000000000..06e0f7bae --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch @@ -0,0 +1,32 @@ +From a2ba4714a6872e547621d29d9ddcb0f374b88cf6 Mon Sep 17 00:00:00 2001 +From: Chen Qi <Qi.Chen@windriver.com> +Date: Tue, 20 Apr 2021 20:42:18 -0700 +Subject: [PATCH] meson.build: fix incorrect header + +The wayland.c actually include 'xdg-shell-client-protocol.h' instead of +the server one, so fix it. Otherwise, it's possible to get build failure +due to race condition. + +Upstream-Status: Pending + +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> +--- + libweston/backend-wayland/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libweston/backend-wayland/meson.build b/libweston/backend-wayland/meson.build +index 7e82513..29270b5 100644 +--- a/libweston/backend-wayland/meson.build ++++ b/libweston/backend-wayland/meson.build +@@ -10,7 +10,7 @@ srcs_wlwl = [ + fullscreen_shell_unstable_v1_protocol_c, + presentation_time_protocol_c, + presentation_time_server_protocol_h, +- xdg_shell_server_protocol_h, ++ xdg_shell_client_protocol_h, + xdg_shell_protocol_c, + ] + +-- +2.30.2 + diff --git a/poky/meta/recipes-graphics/wayland/weston/xwayland.weston-start b/poky/meta/recipes-graphics/wayland/weston/xwayland.weston-start index b483c97cf..db384b1a5 100644 --- a/poky/meta/recipes-graphics/wayland/weston/xwayland.weston-start +++ b/poky/meta/recipes-graphics/wayland/weston/xwayland.weston-start @@ -2,6 +2,4 @@ if type Xwayland >/dev/null 2>/dev/null; then mkdir -p /tmp/.X11-unix - - add_weston_argument "--modules=xwayland.so" fi diff --git a/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb index 50fbfa613..ce2b7d4f3 100644 --- a/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb +++ b/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb @@ -11,6 +11,7 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ file://xwayland.weston-start \ file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \ + file://0001-meson.build-fix-incorrect-header.patch \ " SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch " @@ -124,7 +125,7 @@ SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wa FILES_${PN}-examples = "${bindir}/*" FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" -RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" +RDEPENDS_${PN}-xwayland += "xwayland" RDEPENDS_${PN} += "xkeyboard-config" RRECOMMENDS_${PN} = "weston-init liberation-fonts" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxshmfence/0001-xshmfence_futex.h-Define-SYS_futex-if-it-does-not-ex.patch b/poky/meta/recipes-graphics/xorg-lib/libxshmfence/0001-xshmfence_futex.h-Define-SYS_futex-if-it-does-not-ex.patch new file mode 100644 index 000000000..3e87794d2 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxshmfence/0001-xshmfence_futex.h-Define-SYS_futex-if-it-does-not-ex.patch @@ -0,0 +1,39 @@ +From 5827f6389a227157958d14a687fb29223cb3a03a Mon Sep 17 00:00:00 2001 +From: Mingli Yu <mingli.yu@windriver.com> +Date: Wed, 7 Apr 2021 07:48:42 +0000 +Subject: [PATCH] xshmfence_futex.h: Define SYS_futex if it does not exist + +_NR_futex is not defines by newer architectures e.g. riscv32 as +they only have 64bit variant of time_t. Glibc defines SYS_futex +interface based on __NR_futex, since this is used in applications, +such applications start to fail to build for these newer architectures. +This patch defines a fallback to alias __NR_futex to __NR_futex_time64 +to make SYS_futex keep working. + +Reference: https://git.openembedded.org/openembedded-core/commit/?id=7a218adf9990f5e18d0b6a33eb34091969f979c7 + +Upstream-Status: Pending + +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> +--- + src/xshmfence_futex.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/xshmfence_futex.h b/src/xshmfence_futex.h +index 673ac0e..a71efa5 100644 +--- a/src/xshmfence_futex.h ++++ b/src/xshmfence_futex.h +@@ -53,6 +53,10 @@ static inline int futex_wait(int32_t *addr, int32_t value) { + #include <sys/time.h> + #include <sys/syscall.h> + ++#if !defined(SYS_futex) && defined(SYS_futex_time64) ++#define SYS_futex SYS_futex_time64 ++#endif ++ + static inline long sys_futex(void *addr1, int op, int val1, struct timespec *timeout, void *addr2, int val3) + { + return syscall(SYS_futex, addr1, op, val1, timeout, addr2, val3); +-- +2.29.2 + diff --git a/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb index cc4569653..d153c7a60 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb @@ -13,7 +13,9 @@ DEPENDS += "virtual/libx11" EXTRA_OECONF += "--with-shared-memory-dir=/dev/shm" -BBCLASSEXTEND = "native nativesdk" +SRC_URI += "file://0001-xshmfence_futex.h-Define-SYS_futex-if-it-does-not-ex.patch" SRC_URI[md5sum] = "42dda8016943dc12aff2c03a036e0937" SRC_URI[sha256sum] = "b884300d26a14961a076fbebc762a39831cb75f92bed5ccf9836345b459220c7" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc index b3e03744c..da025171d 100644 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -122,7 +122,6 @@ EXTRA_OECONF += "--with-fop=no \ OPENGL_PKGCONFIGS = "dri glx glamor dri3 xshmfence" PACKAGECONFIG ??= "dga dri2 udev ${XORG_CRYPTO} \ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '${OPENGL_PKGCONFIGS}', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'xwayland', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd systemd-logind', '', d)} \ " diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2021-3472.patch b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2021-3472.patch new file mode 100644 index 000000000..5480f7187 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2021-3472.patch @@ -0,0 +1,43 @@ +From 7aaf54a1884f71dc363f0b884e57bcb67407a6cd Mon Sep 17 00:00:00 2001 +From: Matthieu Herrb <matthieu@herrb.eu> +Date: Sun, 21 Mar 2021 18:38:57 +0100 +Subject: [PATCH] Fix XChangeFeedbackControl() request underflow + +CVE-2021-3472 / ZDI-CAN-1259 + +This vulnerability was discovered by: +Jan-Niklas Sohn working with Trend Micro Zero Day Initiative + +Signed-off-by: Matthieu Herrb <matthieu@herrb.eu> + +Upstream-Status: Backport +CVE: CVE-2021-3472 + +Reference to upstream patch: +[https://gitlab.freedesktop.org/xorg/xserver/-/commit/7aaf54a1884f71dc363f0b884e57bcb67407a6cd] + +Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com> +--- + Xi/chgfctl.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/Xi/chgfctl.c b/Xi/chgfctl.c +index 1de4da9..7a597e4 100644 +--- a/Xi/chgfctl.c ++++ b/Xi/chgfctl.c +@@ -464,8 +464,11 @@ ProcXChangeFeedbackControl(ClientPtr client) + break; + case StringFeedbackClass: + { +- xStringFeedbackCtl *f = ((xStringFeedbackCtl *) &stuff[1]); ++ xStringFeedbackCtl *f; + ++ REQUEST_AT_LEAST_EXTRA_SIZE(xChangeFeedbackControlReq, ++ sizeof(xStringFeedbackCtl)); ++ f = ((xStringFeedbackCtl *) &stuff[1]); + if (client->swapped) { + if (len < bytes_to_int32(sizeof(xStringFeedbackCtl))) + return BadLength; +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.10.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.10.bb index 5c6dbac4d..755a762a7 100644 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.10.bb +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.10.bb @@ -7,6 +7,7 @@ SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.pat file://0001-drmmode_display.c-add-missing-mi.h-include.patch \ file://0001-Avoid-duplicate-definitions-of-IOPortBase.patch \ file://0001-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch \ + file://CVE-2021-3472.patch \ " SRC_URI[sha256sum] = "977420c082450dc808de301ef56af4856d653eea71519a973c3490a780cb7c99" diff --git a/poky/meta/recipes-graphics/xwayland/xwayland_21.1.1.bb b/poky/meta/recipes-graphics/xwayland/xwayland_21.1.1.bb new file mode 100644 index 000000000..8b1c96fc4 --- /dev/null +++ b/poky/meta/recipes-graphics/xwayland/xwayland_21.1.1.bb @@ -0,0 +1,26 @@ +SUMMARY = "XWayland is an X Server that runs under Wayland." +DESCRIPTION = "XWayland is an X Server running as a Wayland client, \ +and thus is capable of displaying native X11 client applications in a \ +Wayland compositor environment. The goal of XWayland is to facilitate \ +the transition from X Window System to Wayland environments, providing \ +a way to run unported applications in the meantime." +HOMEPAGE = "https://fedoraproject.org/wiki/Changes/XwaylandStandalone" + +LICENSE = "MIT-X" +LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880" + +SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz" +SRC_URI[sha256sum] = "31f261ce51bbee76a6ca3ec02aa367ffa2b5efa2b98412df57ccefd7a19003ce" + +inherit meson features_check +REQUIRED_DISTRO_FEATURES = "x11 opengl" + +DEPENDS += "xorgproto xtrans pixman libxkbfile libxfont2 wayland wayland-native wayland-protocols libdrm libepoxy" + +do_install_append() { + # remove files not needed and clashing with xserver-xorg + rm -rf ${D}/${libdir}/xorg/ +} + +FILES_${PN} += "${libdir}/xorg/protocol.txt" + |