From e4e4cc57a0a949400c557073af0cf78f977bd02d Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 19 Mar 2021 09:43:52 +0100 Subject: mesa: update 20.3.4 -> 21.0.0 0001-anv-fix-a-build-race-between-generating-a-header-and.patch merged upstream. osmesa is now a simple boolean option. Swrast has been removed from dri drivers, so as we need at least one driver to enable dri in native/nativesdk, replace it with nouveau (which does not take long to build). Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- ...uild-race-between-generating-a-header-and.patch | 31 ---------------------- ...-check-for-all-linux-host_os-combinations.patch | 12 ++++----- .../0002-meson.build-make-TLS-ELF-optional.patch | 14 +++++----- meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb | 15 ----------- meta/recipes-graphics/mesa/mesa-gl_21.0.0.bb | 15 +++++++++++ meta/recipes-graphics/mesa/mesa.inc | 10 +++---- meta/recipes-graphics/mesa/mesa_20.3.4.bb | 2 -- meta/recipes-graphics/mesa/mesa_21.0.0.bb | 2 ++ 8 files changed, 34 insertions(+), 67 deletions(-) delete mode 100644 meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch delete mode 100644 meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb create mode 100644 meta/recipes-graphics/mesa/mesa-gl_21.0.0.bb delete mode 100644 meta/recipes-graphics/mesa/mesa_20.3.4.bb create mode 100644 meta/recipes-graphics/mesa/mesa_21.0.0.bb (limited to 'meta/recipes-graphics') diff --git a/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch b/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch deleted file mode 100644 index a61e7b2160..0000000000 --- a/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch +++ /dev/null @@ -1,31 +0,0 @@ -From f148d4f1b5b13288b254ead07f1d008d997e2342 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Mon, 2 Nov 2020 23:23:53 +0100 -Subject: [PATCH] anv: fix a build race between generating a header and using - it - -anv_batch_chain.c includes genX_bits.h but doesn't ensure it gets -generated first. This causes build failures, as observed here: -https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/1501/steps/8/logs/step2d - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7412] -Signed-off-by: Alexander Kanavin ---- - src/intel/vulkan/meson.build | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build -index 36e1689314e..b713d8eade3 100644 ---- a/src/intel/vulkan/meson.build -+++ b/src/intel/vulkan/meson.build -@@ -131,6 +131,7 @@ libanv_files = files( - anv_deps = [ - dep_libdrm, - dep_valgrind, -+ idep_genxml, - idep_nir_headers, - idep_vulkan_util_headers, - ] --- -2.29.0 - diff --git a/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch index 085254323c..b6f86743e1 100644 --- a/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch +++ b/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch @@ -1,4 +1,4 @@ -From 0d9ed002eff176b902da266d89829a9b0cb10946 Mon Sep 17 00:00:00 2001 +From 38e984073e4c23b6278d1a2ff21e894fda7b93c5 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Thu, 14 Nov 2019 13:04:49 -0800 Subject: [PATCH] meson.build: check for all linux host_os combinations @@ -20,10 +20,10 @@ Signed-off-by: Alistair Francis 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build -index 898d025..09e3759 100644 +index 932eb13..efc6171 100644 --- a/meson.build +++ b/meson.build -@@ -124,7 +124,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2 +@@ -153,7 +153,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2 # Only build shared_glapi if at least one OpenGL API is enabled with_shared_glapi = with_shared_glapi and with_any_opengl @@ -32,12 +32,12 @@ index 898d025..09e3759 100644 dri_drivers = get_option('dri-drivers') if dri_drivers.contains('auto') -@@ -884,7 +884,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }', +@@ -970,7 +970,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }', endif # TODO: this is very incomplete --if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd'].contains(host_machine.system()) -+if ['cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system()) or host_machine.system().startswith('linux') +-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) ++if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux') pre_args += '-D_GNU_SOURCE' elif host_machine.system() == 'sunos' pre_args += '-D__EXTENSIONS__' diff --git a/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch b/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch index 89c0d150fa..df2346d336 100644 --- a/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch +++ b/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch @@ -1,4 +1,4 @@ -From ce57ce220d9c377beabf4914f33c43118f672ffe Mon Sep 17 00:00:00 2001 +From 624f430dd0a91344146a2b8d49a69f23560c2fa2 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Thu, 14 Nov 2019 13:08:31 -0800 Subject: [PATCH] meson.build: make TLS ELF optional @@ -30,23 +30,23 @@ Signed-off-by: Alistair Francis 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index c5136ea..185270d 100644 +index efc6171..8450968 100644 --- a/meson.build +++ b/meson.build -@@ -424,7 +424,7 @@ endif +@@ -448,7 +448,7 @@ endif # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. use_elf_tls = false --if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) -+if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls') +-if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) ++if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls') pre_args += '-DUSE_ELF_TLS' use_elf_tls = true endif diff --git a/meson_options.txt b/meson_options.txt -index 2d39d13..72006eb 100644 +index fc73f6e..d7482c0 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -368,6 +368,12 @@ option( +@@ -420,6 +420,12 @@ option( value : true, description : 'Enable direct rendering in GLX and EGL for DRI', ) diff --git a/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb b/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb deleted file mode 100644 index e50782be1c..0000000000 --- a/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb +++ /dev/null @@ -1,15 +0,0 @@ -require mesa.inc - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -PROVIDES = "virtual/libgl virtual/mesa" - -S = "${WORKDIR}/mesa-${PV}" - -# At least one DRI rendering engine is required to build mesa. -# When no X11 is available, use osmesa for the rendering engine. -PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" -PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" - -# When NOT using X11, we need to make sure we have swrast available. -DRIDRIVERS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', ',swrast', d)}" diff --git a/meta/recipes-graphics/mesa/mesa-gl_21.0.0.bb b/meta/recipes-graphics/mesa/mesa-gl_21.0.0.bb new file mode 100644 index 0000000000..e50782be1c --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-gl_21.0.0.bb @@ -0,0 +1,15 @@ +require mesa.inc + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +PROVIDES = "virtual/libgl virtual/mesa" + +S = "${WORKDIR}/mesa-${PV}" + +# At least one DRI rendering engine is required to build mesa. +# When no X11 is available, use osmesa for the rendering engine. +PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" +PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" + +# When NOT using X11, we need to make sure we have swrast available. +DRIDRIVERS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', ',swrast', d)}" diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 9f8ec112cf..e9b72ce063 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -19,10 +19,9 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ file://0002-meson.build-make-TLS-ELF-optional.patch \ file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \ - file://0001-anv-fix-a-build-race-between-generating-a-header-and.patch \ " -SRC_URI[sha256sum] = "dc21a987ec1ff45b278fe4b1419b1719f1968debbb80221480e44180849b4084" +SRC_URI[sha256sum] = "e6204e98e6a8d77cf9dc5d34f99dd8e3ef7144f3601c808ca0dd26ba522e0d84" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" @@ -103,8 +102,8 @@ PACKAGECONFIG[elf-tls] = "-Delf-tls=true, -Delf-tls=false" PACKAGECONFIG[xvmc] = "-Dgallium-xvmc=enabled,-Dgallium-xvmc=disabled,libxvmc" PACKAGECONFIG[wayland] = ",,wayland-native wayland libdrm wayland-protocols" -DRIDRIVERS_class-native = "swrast" -DRIDRIVERS_class-nativesdk = "swrast" +DRIDRIVERS_class-native = "nouveau" +DRIDRIVERS_class-nativesdk = "nouveau" DRIDRIVERS_append_x86_class-target = ",r100,r200,nouveau,i965,i915" DRIDRIVERS_append_x86-64_class-target = ",r100,r200,nouveau,i965,i915" # "dri" requires "opengl" @@ -168,8 +167,7 @@ GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', ' PACKAGECONFIG[panfrost] = "" GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'panfrost', ',panfrost', '', d)}" -OSMESA = "${@bb.utils.contains('PACKAGECONFIG', 'gallium', 'gallium', 'classic', d)}" -PACKAGECONFIG[osmesa] = "-Dosmesa=${OSMESA},-Dosmesa=none" +PACKAGECONFIG[osmesa] = "-Dosmesa=true,-Dosmesa=false" PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" diff --git a/meta/recipes-graphics/mesa/mesa_20.3.4.bb b/meta/recipes-graphics/mesa/mesa_20.3.4.bb deleted file mode 100644 index 96e8aa38d6..0000000000 --- a/meta/recipes-graphics/mesa/mesa_20.3.4.bb +++ /dev/null @@ -1,2 +0,0 @@ -require ${BPN}.inc - diff --git a/meta/recipes-graphics/mesa/mesa_21.0.0.bb b/meta/recipes-graphics/mesa/mesa_21.0.0.bb new file mode 100644 index 0000000000..96e8aa38d6 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa_21.0.0.bb @@ -0,0 +1,2 @@ +require ${BPN}.inc + -- cgit 1.2.3-korg