[OE-core] [PATCH v3 2/2] mesa: Upgrade to 19.3.1

Alexander Kanavin alex.kanavin at gmail.com
Fri Dec 20 07:33:00 UTC 2019


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.

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.

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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20191220/bed37e8d/attachment-0001.html>


More information about the Openembedded-core mailing list