diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-graphics')
9 files changed, 181 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-6851.patch b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-6851.patch index 9f2fc901f..1e14149c8 100644 --- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-6851.patch +++ b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-6851.patch @@ -4,6 +4,10 @@ Date: Sat, 11 Jan 2020 01:51:19 +0100 Subject: [PATCH] opj_j2k_update_image_dimensions(): reject images whose coordinates are beyond INT_MAX (fixes #1228) +CVE: CVE-2020-6851 + +Signed-off-by: Mingde (Matthew) Zeng <matthew.zeng@windriver.com> + --- src/lib/openjp2/j2k.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-8112.patch b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-8112.patch index cb250530e..6158601af 100644 --- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-8112.patch +++ b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2020-8112.patch @@ -6,6 +6,10 @@ Subject: [PATCH] opj_tcd_init_tile(): avoid integer overflow That could lead to later assertion failures. Fixes #1231 / CVE-2020-8112 + +CVE: CVE-2020-8112 + +Signed-off-by: Mingde (Matthew) Zeng <matthew.zeng@windriver.com> --- src/lib/openjp2/tcd.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner/0001-meson.build-WORKAROUND-Remove-vulkan-dependency.patch b/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner/0001-meson.build-WORKAROUND-Remove-vulkan-dependency.patch new file mode 100644 index 000000000..0fedfad13 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner/0001-meson.build-WORKAROUND-Remove-vulkan-dependency.patch @@ -0,0 +1,42 @@ +From 2b74a5b160c0500291c554ab5c0944f502e72a42 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linaro.org> +Date: Thu, 9 Jul 2020 20:00:53 +0200 +Subject: [PATCH] meson.build: WORKAROUND Remove vulkan dependency +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We need a patch in the source code to allow enable when DISTRO_FEATURES +contains vulkan. + +Signed-off-by: Aníbal Limón <anibal.limon@linaro.org> +--- + meson.build | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/meson.build b/meson.build +index db97c26..4c1b865 100644 +--- a/meson.build ++++ b/meson.build +@@ -3,21 +3,15 @@ project('parallel-deqp-runner', ['c', 'cpp'], + cpp = meson.get_compiler('cpp') + + thread_dep = dependency('threads') +-vulkan_dep = dependency('vulkan') + + fs_dep = cpp.find_library('stdc++fs', required : false) + if not fs_dep.found() + fs_dep = cpp.find_library('c++fs') + endif + +- + deqp_runner = executable('deqp-runner', + 'src/deqp-runner.cc', + dependencies : [thread_dep, fs_dep], + install : true) + +-executable('hang-detection', +- 'src/hang_detection.c', +- dependencies: [vulkan_dep]) +- + subdir('test') diff --git a/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner_git.bb b/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner_git.bb new file mode 100644 index 000000000..4c02cc55a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/parallel-deqp-runner/parallel-deqp-runner_git.bb @@ -0,0 +1,14 @@ +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4f59d6446bf2e004e80df1a0937129fa" + +SRC_URI = "git://gitlab.freedesktop.org/mesa/parallel-deqp-runner.git;protocol=https \ + file://0001-meson.build-WORKAROUND-Remove-vulkan-dependency.patch \ + " + +# Modify these as desired +PV = "2020.06.15+git${SRCPV}" +SRCREV = "e1642fb691d29b1462504b58916f7f514a963e80" + +S = "${WORKDIR}/git" + +inherit pkgconfig meson diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-clang-private-operator.patch b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-clang-private-operator.patch new file mode 100644 index 000000000..b4573b38b --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-clang-private-operator.patch @@ -0,0 +1,15 @@ +Index: git/external/glslang/src/glslang/Include/PoolAlloc.h +=================================================================== +--- git.orig/external/glslang/src/glslang/Include/PoolAlloc.h ++++ git/external/glslang/src/glslang/Include/PoolAlloc.h +@@ -240,8 +240,9 @@ protected: + + int numCalls; // just an interesting statistic + size_t totalBytes; // just an interesting statistic +-private: ++public: + TPoolAllocator& operator=(const TPoolAllocator&); // don't allow assignment operator ++private: + TPoolAllocator(const TPoolAllocator&); // don't allow default copy constructor + }; + diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-musl.patch b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-musl.patch new file mode 100644 index 000000000..4116ae7d1 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/fix-musl.patch @@ -0,0 +1,24 @@ +Index: git/framework/delibs/dethread/CMakeLists.txt +=================================================================== +--- git.orig/framework/delibs/dethread/CMakeLists.txt ++++ git/framework/delibs/dethread/CMakeLists.txt +@@ -39,6 +39,7 @@ include_directories( + + if (DE_OS_IS_UNIX) + add_definitions(-D_GNU_SOURCE) ++ add_definitions(-D_XOPEN_SOURCE=600) + set(DETHREAD_LIBS ${DETHREAD_LIBS} pthread) + endif () + +Index: git/framework/qphelper/CMakeLists.txt +=================================================================== +--- git.orig/framework/qphelper/CMakeLists.txt ++++ git/framework/qphelper/CMakeLists.txt +@@ -28,6 +28,7 @@ set(QPHELPER_LIBS + if (DE_OS_IS_UNIX OR DE_OS_IS_QNX) + # For vsnprintf() + add_definitions(-D_XOPEN_SOURCE=600) ++ set(QPHELPER_LIBS ${QPHELPER_LIBS} execinfo) + endif () + + if (DE_OS_IS_WIN32 AND DE_COMPILER_IS_MSC) diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc new file mode 100644 index 000000000..bd75cdb1f --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc @@ -0,0 +1,36 @@ +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +SRC_URI = "\ + git://github.com/KhronosGroup/VK-GL-CTS.git;protocol=https;tag=${BPN}-${PV};name=vk-gl-cts \ + git://github.com/google/amber;protocol=https;destsuffix=git/external/amber/src;name=amber;branch=main \ + git://github.com/KhronosGroup/glslang.git;protocol=https;destsuffix=git/external/glslang/src;name=glslang \ + git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/external/spirv-headers/src;name=spirv-headers \ + git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/external/spirv-tools/src;name=spirv-tools \ + https://raw.githubusercontent.com/baldurk/renderdoc/v1.1/renderdoc/api/app/renderdoc_app.h;subdir=git/external/renderdoc/src;name=renderdoc \ +" + +S = "${WORKDIR}/git" + +SRCREV_FORMAT = "vk-gl-cts" + +S = "${WORKDIR}/git" + +inherit pkgconfig cmake + +DEPENDS += "libpng zlib virtual/libgles2 virtual/egl" + +SRC_URI_append_libc-musl = "\ + file://fix-musl.patch \ +" +DEPENDS_append_libc-musl = " libexecinfo" + +SRC_URI_append_toolchain-clang = "\ + file://fix-clang-private-operator.patch \ +" + +EXTRA_OECMAKE_append = " -DDEQP_TARGET=surfaceless" + +CTSDIR = "/usr/lib/${BPN}" + +FILES_${PN} += "${CTSDIR}" diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.6.1.bb b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.6.1.bb new file mode 100644 index 000000000..3e336e45c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.6.1.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "OpenGL CTS" + +require khronos-cts.inc + +SRCREV_amber = "d26ee22dd7faab1845a531d410f7ec1db407402a" +SRCREV_glslang = "c538b5d796fb24dd418fdd650c7f76e56bcc3dd8" +SRCREV_spirv-headers = "e4322e3be589e1ddd44afb20ea842a977c1319b8" +SRCREV_spirv-tools = "1eb89172a82b436d8037e8a8c29c80f7e1f7df74" +SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}/${CTSDIR} + cp -r ${B}/external/openglcts/modules/* ${D}/${CTSDIR} + rm -r ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles + rm -r ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles + rm -r ${D}/${CTSDIR}/common/subgroups/*.a ${D}/${CTSDIR}/common/subgroups/cmake_install.cmake ${D}/${CTSDIR}/common/subgroups/CMakeFiles +} diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.2.3.0.bb b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.2.3.0.bb new file mode 100644 index 000000000..77064d4ed --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.2.3.0.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Vulkan CTS" + +require khronos-cts.inc + +SRCREV_amber = "a40bef4dba98d2d80b48e5a940d8574fbfceb197" +SRCREV_glslang = "b5f003d7a3ece37db45578a8a3140b370036fc64" +SRCREV_spirv-headers = "f8bf11a0253a32375c32cad92c841237b96696c0" +SRCREV_spirv-tools = "d2b486219495594f2e5d0e8d457fc234a3460b3b" +SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" + +S = "${WORKDIR}/git" + +REQUIRED_DISTRO_FEATURES = "vulkan" +inherit features_check + +DEPENDS += " vulkan-loader" + +do_install() { + install -d ${D}/${CTSDIR} + cp -r ${B}/external/vulkancts/modules/vulkan/* ${D}/${CTSDIR}/ + rm -r ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles + rm -r ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles +} |