openembedded-core.lists.openembedded.org archive mirror
 help / color / mirror / Atom feed
From: "Hsia-Jun Li" <randy.li@synaptics.com>
To: openembedded-core@lists.openembedded.org
Cc: alex.kanavin@gmail.com
Subject: Re: [OE-core] [PATCH 01/26] meson: update 0.58.1 -> 0.59.1
Date: Mon, 11 Oct 2021 10:47:58 +0800	[thread overview]
Message-ID: <e76d1475-2216-345d-cbcc-8bc682abdf6e@synaptics.com> (raw)
In-Reply-To: <20210908180125.103473-1-alex.kanavin@gmail.com>



On 9/9/21 02:01, Alexander Kanavin wrote:
> CAUTION: Email originated externally, do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> 
> Drop 0003-native_bindir.patch: it doesn't seem to actually define
> anything where the use_native parameter is set to true.
> 
> Also, the issue should be solved without invasive, custom patching
> of the code: via meson.cross, custom .pc files for the items in
> question or some other configuration mechanism.
> 
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>   meta/recipes-devtools/meson/meson.inc         |  4 +-
>   .../0001-Make-CPU-family-warnings-fatal.patch | 20 ++--
>   .../meson/meson/0003-native_bindir.patch      | 94 -------------------
>   .../meson/meson/gi-target-dep.patch           | 41 --------
>   .../{meson_0.58.1.bb => meson_0.59.1.bb}      |  0
>   ...on_0.58.1.bb => nativesdk-meson_0.59.1.bb} |  0
>   6 files changed, 10 insertions(+), 149 deletions(-)
>   delete mode 100644 meta/recipes-devtools/meson/meson/0003-native_bindir.patch
>   delete mode 100644 meta/recipes-devtools/meson/meson/gi-target-dep.patch
>   rename meta/recipes-devtools/meson/{meson_0.58.1.bb => meson_0.59.1.bb} (100%)
>   rename meta/recipes-devtools/meson/{nativesdk-meson_0.58.1.bb => nativesdk-meson_0.59.1.bb} (100%)
I think we should update the meson.cross.template generated by this ^^^ 
file.

c_args, c_link_args, cpp_args, cpp_link_args have been moved to the 
'[built-in options]' section. Also we need an native-file here.
That is what
06b4910c3ada5398faf9369d686b82eee441bb19 has done for OE itself.

> 
> diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc
> index f1746d2094..c83ea406f0 100644
> --- a/meta/recipes-devtools/meson/meson.inc
> +++ b/meta/recipes-devtools/meson/meson.inc
> @@ -9,15 +9,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
> 
>   SRC_URI = "https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mesonbuild_meson_releases_download_-24-257BPV-257D_meson-2D-24-257BPV-257D.tar.gz&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=5dqRty1dyk5ogg5-EgVkgg4YPUEY5-3UME8k0bWkEv4&e=  \
>              file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \
> -           file://0003-native_bindir.patch \
>              file://0001-python-module-do-not-manipulate-the-environment-when.patch \
>              file://disable-rpath-handling.patch \
>              file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
> -           file://gi-target-dep.patch \
>              file://0001-Make-CPU-family-warnings-fatal.patch \
>              file://0002-Support-building-allarch-recipes-again.patch \
>              "
> -SRC_URI[sha256sum] = "3144a3da662fcf79f1e5602fa929f2821cba4eba28c2c923fe0a7d3e3db04d5d"
> +SRC_URI[sha256sum] = "db586a451650d46bbe10984a87b79d9bcdc1caebf38d8e189f8848f8d502356d"
> 
>   UPSTREAM_CHECK_URI = "https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mesonbuild_meson_releases&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=O7nZ0g946ut7YnoPv_FaabmxnkHPuAKY-r8ztXYdtT4&e= "
>   UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar"
> diff --git a/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
> index bcccfabd17..c5be526b10 100644
> --- a/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
> +++ b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
> @@ -1,20 +1,21 @@
> -From b64032a2eb1fb760f4ffd5b4b666e2433cf80d39 Mon Sep 17 00:00:00 2001
> +From 6c4eef1d92e9e42fdbc888365cab3c95fb33c605 Mon Sep 17 00:00:00 2001
>   From: Ross Burton <ross.burton@intel.com>
>   Date: Tue, 3 Jul 2018 13:59:09 +0100
> -Subject: [PATCH 1/2] Make CPU family warnings fatal
> +Subject: [PATCH] Make CPU family warnings fatal
> 
>   Upstream-Status: Inappropriate [OE specific]
>   Signed-off-by: Ross Burton <ross.burton@intel.com>
> +
>   ---
>    mesonbuild/envconfig.py   | 2 +-
>    mesonbuild/environment.py | 4 +---
>    2 files changed, 2 insertions(+), 4 deletions(-)
> 
>   diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
> -index c6a4df3..4d58c91 100644
> +index 307aac3..66fb7ec 100644
>   --- a/mesonbuild/envconfig.py
>   +++ b/mesonbuild/envconfig.py
> -@@ -266,7 +266,7 @@ class MachineInfo:
> +@@ -267,7 +267,7 @@ class MachineInfo(HoldableObject):
> 
>            cpu_family = literal['cpu_family']
>            if cpu_family not in known_cpu_families:
> @@ -24,20 +25,17 @@ index c6a4df3..4d58c91 100644
>            endian = literal['endian']
>            if endian not in ('little', 'big'):
>   diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
> -index fc9b703..eea8345 100644
> +index 71286a5..179917e 100644
>   --- a/mesonbuild/environment.py
>   +++ b/mesonbuild/environment.py
> -@@ -436,9 +436,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
> +@@ -352,9 +352,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
>                trial = 'ppc64'
> 
>        if trial not in known_cpu_families:
> --        mlog.warning('Unknown CPU family {!r}, please report this at '
> +-        mlog.warning(f'Unknown CPU family {trial!r}, please report this at '
>   -                     'https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mesonbuild_meson_issues_new&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=E6p11_8xxyyW5xmKHE5K7_iKGL15ydVn4LzjxYHhyaw&e=  with the '
> --                     'output of `uname -a` and `cat /proc/cpuinfo`'.format(trial))
> +-                     'output of `uname -a` and `cat /proc/cpuinfo`')
>   +        raise EnvironmentException('Unknown CPU family %s, see https://urldefense.proofpoint.com/v2/url?u=https-3A__wiki.yoctoproject.org_wiki_Meson_UnknownCPU&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=LluHbSsMmrwW57hP78ICwNrhaI_HYzqgsK9MAnx37ho&e=  for directions.' % trial)
> 
>        return trial
> 
> ---
> -2.24.0
> -
> diff --git a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
> deleted file mode 100644
> index 89257b9e05..0000000000
> --- a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
> +++ /dev/null
> @@ -1,94 +0,0 @@
> -From 30e97d4090a3d3f5b7ddcaf27cfa17f3c8c1d462 Mon Sep 17 00:00:00 2001
> -From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
> -Date: Wed, 15 Nov 2017 15:05:01 +0100
> -Subject: [PATCH] native_bindir
> -
> -Some libraries, like QT, have pre-processors that convert their input
> -files into something that the cross-compiler can process. We find the
> -path of those pre-processors via pkg-config-native instead of
> -pkg-config.
> -
> -This path forces the use of pkg-config-native for host_bins arguments.
> -
> -There are some discussions upstream to merge this patch, but I presonaly believe
> -that is is OE only. https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mesonbuild_meson_issues_1849-23issuecomment-2D303730323&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=IApmoQBXk9DnxLOwc7ZqQvK3y6eYJzND5r08-dht6wE&e=
> -
> -Upstream-Status: Inappropriate [OE specific]
> -Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
> -
> ----
> - mesonbuild/dependencies/base.py | 19 +++++++++++--------
> - 1 file changed, 11 insertions(+), 8 deletions(-)
> -
> -diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> -index 14380d4..d0c443f 100644
> ---- a/mesonbuild/dependencies/base.py
> -+++ b/mesonbuild/dependencies/base.py
> -@@ -179,7 +179,7 @@ class Dependency:
> -     def get_exe_args(self, compiler):
> -         return []
> -
> --    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str:
> -+    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str:
> -         raise DependencyException(f'{self.name!r} is not a pkgconfig dependency')
> -
> -     def get_configtool_variable(self, variable_name):
> -@@ -267,7 +267,7 @@ class InternalDependency(Dependency):
> -             return True
> -         return any(d.is_built() for d in self.ext_deps)
> -
> --    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str:
> -+    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str:
> -         raise DependencyException('Method "get_pkgconfig_variable()" is '
> -                                   'invalid for an internal dependency')
> -
> -@@ -645,8 +645,11 @@ class PkgConfigDependency(ExternalDependency):
> -         return s.format(self.__class__.__name__, self.name, self.is_found,
> -                         self.version_reqs)
> -
> --    def _call_pkgbin_real(self, args, env):
> --        cmd = self.pkgbin.get_command() + args
> -+    def _call_pkgbin_real(self, args, env, use_native=False):
> -+        if use_native:
> -+            cmd = [self.pkgbin.get_command()[0] + "-native"] + args
> -+        else:
> -+            cmd = self.pkgbin.get_command() + args
> -         p, out, err = Popen_safe(cmd, env=env)
> -         rc, out, err = p.returncode, out.strip(), err.strip()
> -         call = ' '.join(cmd)
> -@@ -674,7 +677,7 @@ class PkgConfigDependency(ExternalDependency):
> -             if key.startswith('PKG_'):
> -                 mlog.debug(f'env[{key}]: {value}')
> -
> --    def _call_pkgbin(self, args, env=None):
> -+    def _call_pkgbin(self, args, env=None, use_native=False):
> -         # Always copy the environment since we're going to modify it
> -         # with pkg-config variables
> -         if env is None:
> -@@ -688,7 +691,7 @@ class PkgConfigDependency(ExternalDependency):
> -         targs = tuple(args)
> -         cache = PkgConfigDependency.pkgbin_cache
> -         if (self.pkgbin, targs, fenv) not in cache:
> --            cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env)
> -+            cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env, use_native)
> -         return cache[(self.pkgbin, targs, fenv)]
> -
> -     def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]:
> -@@ -894,7 +897,7 @@ class PkgConfigDependency(ExternalDependency):
> -                                       (self.name, out_raw))
> -         self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
> -
> --    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str:
> -+    def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str:
> -         options = ['--variable=' + variable_name, self.name]
> -
> -         if 'define_variable' in kwargs:
> -@@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency):
> -
> -             options = ['--define-variable=' + '='.join(definition)] + options
> -
> --        ret, out, err = self._call_pkgbin(options)
> -+        ret, out, err = self._call_pkgbin(options, use_native=use_native)
> -         variable = ''
> -         if ret != 0:
> -             if self.required:
> diff --git a/meta/recipes-devtools/meson/meson/gi-target-dep.patch b/meta/recipes-devtools/meson/meson/gi-target-dep.patch
> deleted file mode 100644
> index 29e164ccc7..0000000000
> --- a/meta/recipes-devtools/meson/meson/gi-target-dep.patch
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -When building gobject-introspection we want the *native* binaries (as they need
> -to be executed) but *host* gobject-introspection libraries, as otherwise the
> -native pkg-config can be used and the build will try to link native and host
> -binaries together.
> -
> -Upstream-Status: Backport [589236226856f591c9e8daf0cb7aa1aef8862388]
> -Signed-off-by: Ross Burton <ross.burton@arm.com>
> -
> -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> -index f9660838e..2eefc3fc7 100644
> ---- a/mesonbuild/modules/gnome.py
> -+++ b/mesonbuild/modules/gnome.py
> -@@ -84,8 +84,8 @@ class GnomeModule(ExtensionModule):
> -                      mlog.bold('https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mesonbuild_meson_issues_1387&d=DwIDAg&c=7dfBJ8cXbWjhc0BhImu8wQ&r=P4xb2_7biqBxD4LGGPrSV6j-jf3C3xlR7PXU-mLTeZE&m=gNJ7fQTAkVT-8n-Ph62ngFvOrjzapJ1INbXHP6rg2xU&s=IN-Sy6yGBdhGjdLP8A2fUqMEAFSx_84xWoeH1jIeb7Q&e= '),
> -                      once=True)
> -
> --    def _get_native_dep(self, state, depname, required=True):
> --        kwargs = {'native': True, 'required': required}
> -+    def _get_dep(self, state, depname, native=False, required=True):
> -+        kwargs = {'native': native, 'required': required}
> -         holder = self.interpreter.func_dependency(state.current_node, [depname], kwargs)
> -         return holder.held_object
> -
> -@@ -101,7 +101,7 @@ class GnomeModule(ExtensionModule):
> -             return ExternalProgram.from_entry(name, prog)
> -
> -         # Check if pkgconfig has a variable
> --        dep = self._get_native_dep(state, depname, required=False)
> -+        dep = self._get_dep(state, depname, native=True, required=False)
> -         if dep.found() and dep.type_name == 'pkgconfig':
> -             value = dep.get_pkgconfig_variable(varname, {})
> -             if value:
> -@@ -481,7 +481,7 @@ class GnomeModule(ExtensionModule):
> -
> -     def _get_gir_dep(self, state):
> -         if not self.gir_dep:
> --            self.gir_dep = self._get_native_dep(state, 'gobject-introspection-1.0')
> -+            self.gir_dep = self._get_dep(state, 'gobject-introspection-1.0')
> -             self.giscanner = self._get_native_binary(state, 'g-ir-scanner', 'gobject-introspection-1.0', 'g_ir_scanner')
> -             self.gicompiler = self._get_native_binary(state, 'g-ir-compiler', 'gobject-introspection-1.0', 'g_ir_compiler')
> -         return self.gir_dep, self.giscanner, self.gicompiler
> diff --git a/meta/recipes-devtools/meson/meson_0.58.1.bb b/meta/recipes-devtools/meson/meson_0.59.1.bb
> similarity index 100%
> rename from meta/recipes-devtools/meson/meson_0.58.1.bb
> rename to meta/recipes-devtools/meson/meson_0.59.1.bb
> diff --git a/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb b/meta/recipes-devtools/meson/nativesdk-meson_0.59.1.bb
> similarity index 100%
> rename from meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb
> rename to meta/recipes-devtools/meson/nativesdk-meson_0.59.1.bb
> --
> 2.31.1
> 
> 
> 
> 
> 

-- 
Hsia-Jun(Randy) Li

  parent reply	other threads:[~2021-10-11  2:47 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-08 18:01 [PATCH 01/26] meson: update 0.58.1 -> 0.59.1 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 02/26] libcap: update 2.51 -> 2.54 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 03/26] lua: add a recipe from meta-oe Alexander Kanavin
2021-09-09  5:11   ` [OE-core] " Khem Raj
2021-09-08 18:01 ` [PATCH 04/26] lua: update 5.3.6 -> 5.4.3 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 05/26] rpm: update 4.16.1.3 -> 4.17.0 Alexander Kanavin
2021-10-14 12:19   ` [OE-core] " Martin Jansa
2021-09-08 18:01 ` [PATCH 06/26] libdnf: fix the rpm sqlite-only target setup Alexander Kanavin
2021-09-08 18:01 ` [PATCH 07/26] libsolv: disable rpm bdb format support Alexander Kanavin
2021-09-08 18:01 ` [PATCH 08/26] perl: do not build berkeley db module by default Alexander Kanavin
2021-09-08 18:01 ` [PATCH 09/26] package_rpm: use zstd instead of xz Alexander Kanavin
2021-09-08 18:01 ` [PATCH 10/26] qemu: update 6.0.0 -> 6.1.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 11/26] runqemu: correct vga-virtio option to keep virgl enabled Alexander Kanavin
2021-09-08 18:01 ` [PATCH 12/26] gnupg: update 2.3.1 -> 2.3.2 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 13/26] pinentry: update 1.1.1 -> 1.2.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 14/26] spirv-tools: update 2021.2 -> 2021.3 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 15/26] glslang: update 11.5.0 -> 11.6.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 16/26] shaderc: update 2021.1 -> 2021.2 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 17/26] lttng: update 2.12 -> 2.13.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 18/26] core-image-ptest-all: bump RAM requirement to 4G Alexander Kanavin
2021-09-08 18:01 ` [PATCH 19/26] inetutils: update 2.1 -> 2.2 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 20/26] systemd: update 249.3 -> 249.4 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 21/26] lsof: update 4.91 -> 4.94.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 22/26] libpam: update 1.5.1 -> 1.5.2 Alexander Kanavin
2021-10-12 10:13   ` [OE-core] " Zoltan Boszormenyi
2021-09-08 18:01 ` [PATCH 23/26] libhandy: update 1.2.3 -> 1.4.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 24/26] rt-tests: update 2.1 -> 2.2 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 25/26] libgit2: update 1.1.1 -> 1.2.0 Alexander Kanavin
2021-09-08 18:01 ` [PATCH 26/26] libssh2: update 1.9.0 -> 1.10.0 Alexander Kanavin
2021-09-09  9:01 ` [OE-core] [PATCH 01/26] meson: update 0.58.1 -> 0.59.1 Peter Kjellerstedt
2021-09-09  9:04   ` Alexander Kanavin
2021-10-11  2:47 ` Hsia-Jun Li [this message]
2021-10-11  8:05   ` Alexander Kanavin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e76d1475-2216-345d-cbcc-8bc682abdf6e@synaptics.com \
    --to=randy.li@synaptics.com \
    --cc=alex.kanavin@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).