[OE-core] [PATCH v3 2/2] mesa: Upgrade to 19.3.1
Alistair Francis
alistair23 at gmail.com
Fri Dec 20 17:45:15 UTC 2019
On Thu, Dec 19, 2019 at 11:33 PM Alexander Kanavin
<alex.kanavin at gmail.com> wrote:
>
> On Fri, 20 Dec 2019 at 05:15, Alistair Francis <alistair at alistair23.me> wrote:
>>
>> Upgrade mesa to 19.3 and refresh the patches.
>>
>> Also change the regex to not look for x.x.0 versions as they are
>> development versions
>
>
> Old: mesa-(?P<pver>\d+(\.\d+)+)
> New: mesa-(?P<pver>\d+(\.^[1-9]\d+)+)
>
> I'm not sure what you had in mind, but the new regex does not work at all, as ^ outside of [] means "beginning of string", and placing [1-9] where it is would mean it would also exclude x.0.x versions.
The goal was to skip all x.x.0 versions, the idea being that they are
test releases.
>
> To test, use https://regex101.com/, and you should also run 'devtool latest-version mesa'. I actually think it's fine to leave the regex as it is, x.x.1 versions are usually quick to follow, and it's good to get an earlier notice of a new release.
I did test with devtool check-update-status (I can't remember the name
exactly) and it seemed to work.
Looking at regex101 it seems like this is what I actually want:
mesa-(?P<pver>\d+(\.\d)(\.[1-9]+)+)
I see your point about seeing the update early, but then we don't want
to accidentlly update to a test version.
Should I update to the regex I mentioned above or just drop the change?
Alistair
>
> Alex
>
>>
>> As MESA_EGL_NO_X11_HEADERS was renamed to EGL_NO_X11 in [1] we are going
>> to change the do_install and add a patch to libepoxy to use the new
>> define.
>>
>> 1: https://gitlab.freedesktop.org/mesa/mesa/commit/6202a13b71e18dc31ba7e2f4ea915b67eacc1ddb
>>
>> Signed-off-by: Alistair Francis <alistair at alistair23.me>
>> ---
>> ...atch_common.h-define-also-EGL_NO_X11.patch | 26 +++++++++++++++++++
>> .../libepoxy/libepoxy_1.5.4.bb | 1 +
>> ...k-for-all-linux-host_os-combinations.patch | 18 ++++++-------
>> ...02-meson.build-make-TLS-ELF-optional.patch | 18 ++++++-------
>> ...Allow-enable-DRI-without-DRI-drivers.patch | 10 +++----
>> ...le-asm-unconditionally-now-that-gen_.patch | 10 +++----
>> .../{mesa-gl_19.2.4.bb => mesa-gl_19.3.1.bb} | 0
>> .../mesa/{mesa_19.2.4.bb => mesa_19.3.1.bb} | 8 +++---
>> 8 files changed, 59 insertions(+), 32 deletions(-)
>> create mode 100644 meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch
>> rename meta/recipes-graphics/mesa/{mesa-gl_19.2.4.bb => mesa-gl_19.3.1.bb} (100%)
>> rename meta/recipes-graphics/mesa/{mesa_19.2.4.bb => mesa_19.3.1.bb} (60%)
>>
>> diff --git a/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch b/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch
>> new file mode 100644
>> index 0000000000..7262945181
>> --- /dev/null
>> +++ b/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch
>> @@ -0,0 +1,26 @@
>> +From 6f15cc28d17cfdd86f5974f06ad97b8afedd5627 Mon Sep 17 00:00:00 2001
>> +From: Martin Jansa <Martin.Jansa at gmail.com>
>> +Date: Fri, 25 Oct 2019 11:09:34 +0000
>> +Subject: [PATCH] dispatch_common.h: define also EGL_NO_X11
>> +
>> +MESA_EGL_NO_X11_HEADERS was renamed to EGL_NO_X11 in:
>> +https://github.com/mesa3d/mesa/commit/6202a13b71e18dc31ba7e2f4ea915b67eacc1ddb
>> +
>> +Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
>> +Upstream-Status: Pending
>> +---
>> + src/dispatch_common.h | 1 +
>> + 1 file changed, 1 insertion(+)
>> +
>> +diff --git a/src/dispatch_common.h b/src/dispatch_common.h
>> +index dcb3a35..c206253 100644
>> +--- a/src/dispatch_common.h
>> ++++ b/src/dispatch_common.h
>> +@@ -52,6 +52,7 @@
>> + * should do the same
>> + */
>> + # define MESA_EGL_NO_X11_HEADERS 1
>> ++# define EGL_NO_X11 1
>> + # endif
>> + #include "epoxy/egl.h"
>> + #endif
>> diff --git a/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb b/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb
>> index 4caf672369..af9867407e 100644
>> --- a/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb
>> +++ b/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb
>> @@ -10,6 +10,7 @@ LICENSE = "MIT"
>> LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
>>
>> SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \
>> + file://0001-dispatch_common.h-define-also-EGL_NO_X11.patch \
>> "
>> SRC_URI[md5sum] = "00f47ad447321f9dc59f85bc1c9d0467"
>> SRC_URI[sha256sum] = "0bd2cc681dfeffdef739cb29913f8c3caa47a88a451fd2bc6e606c02997289d2"
>> 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 1869e11059..085254323c 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,6 +1,6 @@
>> -From b6d9bc97cb0e8c540a45dba5440b036fb940ff95 Mon Sep 17 00:00:00 2001
>> -From: Alistair Francis <alistair.francis at wdc.com>
>> -Date: Mon, 11 Nov 2019 09:38:15 -0800
>> +From 0d9ed002eff176b902da266d89829a9b0cb10946 Mon Sep 17 00:00:00 2001
>> +From: Alistair Francis <alistair at alistair23.me>
>> +Date: Thu, 14 Nov 2019 13:04:49 -0800
>> Subject: [PATCH] meson.build: check for all linux host_os combinations
>>
>> Make sure that we are also looking for our host_os combinations like
>> @@ -13,30 +13,30 @@ Upstream-Status: Pending
>> Signed-off-by: Anuj Mittal <anuj.mittal at intel.com>
>> Signed-off-by: Fabio Berton <fabio.berton at ossystems.com.br>
>> Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
>> -Signed-off-by: Alistair Francis <alistair.francis at wdc.com>
>> +Signed-off-by: Alistair Francis <alistair at alistair23.me>
>>
>> ---
>> meson.build | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/meson.build b/meson.build
>> -index d584152..a1f098c 100644
>> +index 898d025..09e3759 100644
>> --- a/meson.build
>> +++ b/meson.build
>> -@@ -117,7 +117,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
>> +@@ -124,7 +124,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 = get_option('shared-glapi') and with_any_opengl
>> + with_shared_glapi = with_shared_glapi and with_any_opengl
>>
>> -system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos'].contains(host_machine.system())
>> +system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'dragonfly'].contains(host_machine.system()) or host_machine.system().startswith('linux')
>>
>> dri_drivers = get_option('dri-drivers')
>> if dri_drivers.contains('auto')
>> -@@ -856,7 +856,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }',
>> +@@ -884,7 +884,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }',
>> endif
>>
>> # TODO: this is very incomplete
>> --if ['linux', 'cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system())
>> +-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')
>> pre_args += '-D_GNU_SOURCE'
>> elif host_machine.system() == 'sunos'
>> 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 199ed572d5..cd35a1f850 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,13 +1,13 @@
>> -From af6923544de02ded648a736e07b9bd8b7c52dba9 Mon Sep 17 00:00:00 2001
>> -From: Alistair Francis <alistair.francis at wdc.com>
>> -Date: Wed, 23 Oct 2019 09:46:28 -0700
>> +From df835389699b32bb6610b39972502e323f8e09e5 Mon Sep 17 00:00:00 2001
>> +From: Alistair Francis <alistair at alistair23.me>
>> +Date: Thu, 14 Nov 2019 13:08:31 -0800
>> Subject: [PATCH] meson.build: make TLS ELF optional
>>
>> USE_ELF_TLS has replaced GLX_USE_TLS so this patch is the original "make
>> TLS GLX optional again" patch updated to the latest mesa.
>>
>> Upstream-Status: Inappropriate [configuration]
>> -Signed-off-by: Alistair Francis <alistair.francis at wdc.com>
>> +Signed-off-by: Alistair Francis <alistair at alistair23.me>
>>
>> ---
>> meson.build | 2 +-
>> @@ -15,23 +15,23 @@ Signed-off-by: Alistair Francis <alistair.francis at wdc.com>
>> 2 files changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/meson.build b/meson.build
>> -index a1f098c..1e31eb4 100644
>> +index 09e3759..a954118 100644
>> --- a/meson.build
>> +++ b/meson.build
>> -@@ -378,7 +378,7 @@ if with_egl and not (with_platform_drm or with_platform_surfaceless or with_plat
>> +@@ -387,7 +387,7 @@ if with_egl and not (with_platform_drm or with_platform_surfaceless or with_plat
>> endif
>>
>> # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
>> --if not with_platform_android or get_option('platform-sdk-version') >= 29
>> +-if host_machine.system() != 'windows' and (not with_platform_android or get_option('platform-sdk-version') >= 29)
>> +if (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls')
>> pre_args += '-DUSE_ELF_TLS'
>> endif
>>
>> diff --git a/meson_options.txt b/meson_options.txt
>> -index b768c15..76cef24 100644
>> +index 626baf3..637ff14 100644
>> --- a/meson_options.txt
>> +++ b/meson_options.txt
>> -@@ -333,6 +333,12 @@ option(
>> +@@ -341,6 +341,12 @@ option(
>> value : true,
>> description : 'Enable direct rendering in GLX and EGL for DRI',
>> )
>> diff --git a/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch b/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch
>> index c20a1f7c52..a0536c87ac 100644
>> --- a/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch
>> +++ b/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch
>> @@ -1,4 +1,4 @@
>> -From 5ad6515238bc042cccf9959abad44fdee9aeb07f Mon Sep 17 00:00:00 2001
>> +From 7eaa21a79ce6d6e92f6bf98c28b68e3fcb4d7874 Mon Sep 17 00:00:00 2001
>> From: Fabio Berton <fabio.berton at ossystems.com.br>
>> Date: Wed, 12 Jun 2019 14:18:31 -0300
>> Subject: [PATCH] Allow enable DRI without DRI drivers
>> @@ -15,10 +15,10 @@ Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
>> 2 files changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/meson.build b/meson.build
>> -index 1e31eb4..512eec6 100644
>> +index a954118..62864c6 100644
>> --- a/meson.build
>> +++ b/meson.build
>> -@@ -147,7 +147,7 @@ with_dri_r200 = dri_drivers.contains('r200')
>> +@@ -154,7 +154,7 @@ with_dri_r200 = dri_drivers.contains('r200')
>> with_dri_nouveau = dri_drivers.contains('nouveau')
>> with_dri_swrast = dri_drivers.contains('swrast')
>>
>> @@ -28,10 +28,10 @@ index 1e31eb4..512eec6 100644
>> gallium_drivers = get_option('gallium-drivers')
>> if gallium_drivers.contains('auto')
>> diff --git a/meson_options.txt b/meson_options.txt
>> -index 76cef24..a8abd04 100644
>> +index 637ff14..700c34c 100644
>> --- a/meson_options.txt
>> +++ b/meson_options.txt
>> -@@ -34,6 +34,12 @@ option(
>> +@@ -35,6 +35,12 @@ option(
>> choices : ['auto', 'true', 'false'],
>> description : 'enable support for dri3'
>> )
>> diff --git a/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch b/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch
>> index b5658d0c9d..8d614e571a 100644
>> --- a/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch
>> +++ b/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch
>> @@ -1,4 +1,4 @@
>> -From 1b1cb6e5ea25eaa98573328b9565728a08245997 Mon Sep 17 00:00:00 2001
>> +From 41cd8836d785c79381764e7de59319f87959a5cf Mon Sep 17 00:00:00 2001
>> From: Alistair Francis <alistair at alistair23.me>
>> Date: Thu, 14 Nov 2019 09:06:02 -0800
>> Subject: [PATCH] Revert "mesa: Enable asm unconditionally, now that
>> @@ -15,7 +15,7 @@ Signed-off-by: Alistair Francis <alistair at alistair23.me>
>> 2 files changed, 67 insertions(+), 33 deletions(-)
>>
>> diff --git a/meson.build b/meson.build
>> -index 512eec6..a2bcc3a 100644
>> +index 62864c6..b53be8d 100644
>> --- a/meson.build
>> +++ b/meson.build
>> @@ -49,6 +49,7 @@ with_vulkan_icd_dir = get_option('vulkan-icd-dir')
>> @@ -26,7 +26,7 @@ index 512eec6..a2bcc3a 100644
>> with_glx_read_only_text = get_option('glx-read-only-text')
>> with_glx_direct = get_option('glx-direct')
>> with_osmesa = get_option('osmesa')
>> -@@ -985,41 +986,68 @@ endif
>> +@@ -1093,41 +1094,68 @@ dep_ws2_32 = cc.find_library('ws2_32', required : with_platform_windows)
>>
>> # TODO: shared/static? Is this even worth doing?
>>
>> @@ -129,10 +129,10 @@ index 512eec6..a2bcc3a 100644
>> endif
>>
>> diff --git a/meson_options.txt b/meson_options.txt
>> -index a8abd04..0f4bd80 100644
>> +index 700c34c..62e8472 100644
>> --- a/meson_options.txt
>> +++ b/meson_options.txt
>> -@@ -233,6 +233,12 @@ option(
>> +@@ -241,6 +241,12 @@ option(
>> value : false,
>> description : 'Enable GLVND support.'
>> )
>> diff --git a/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb b/meta/recipes-graphics/mesa/mesa-gl_19.3.1.bb
>> similarity index 100%
>> rename from meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb
>> rename to meta/recipes-graphics/mesa/mesa-gl_19.3.1.bb
>> diff --git a/meta/recipes-graphics/mesa/mesa_19.2.4.bb b/meta/recipes-graphics/mesa/mesa_19.3.1.bb
>> similarity index 60%
>> rename from meta/recipes-graphics/mesa/mesa_19.2.4.bb
>> rename to meta/recipes-graphics/mesa/mesa_19.3.1.bb
>> index f4b33df227..d105fec4df 100644
>> --- a/meta/recipes-graphics/mesa/mesa_19.2.4.bb
>> +++ b/meta/recipes-graphics/mesa/mesa_19.3.1.bb
>> @@ -7,15 +7,15 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
>> file://0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch \
>> "
>>
>> -SRC_URI[md5sum] = "5c047732b81651ddb341597528b4b096"
>> -SRC_URI[sha256sum] = "09000a0f7dbbd82e193b81a8f1bf0c118eab7ca975c0329181968596e548e30f"
>> +SRC_URI[md5sum] = "5c5965db31993af47fee82c9a7ccba5e"
>> +SRC_URI[sha256sum] = "cd951db69c56a97ff0570a7ab2c0e39e6c5323f4cd8f4eb8274723e033beae59"
>>
>> -UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
>> +UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.^[1-9]\d+)+)"
>>
>> #because we cannot rely on the fact that all apps will use pkgconfig,
>> #make eglplatform.h independent of MESA_EGL_NO_X11_HEADER
>> do_install_append() {
>> if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then
>> - sed -i -e 's/^#if defined(MESA_EGL_NO_X11_HEADERS)$/#if defined(MESA_EGL_NO_X11_HEADERS) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h
>> + sed -i -e 's/^#elif defined(__unix__) && defined(EGL_NO_X11)$/#elif defined(__unix__) \&\& defined(EGL_NO_X11) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h
>> fi
>> }
>> --
>> 2.24.0
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list