Re: [OE-core] [PATCH 24/24] meson: update 0.52.1 -> 0.53.0

2020-01-23 Thread Khem Raj
On Thu, Jan 23, 2020 at 7:48 AM Alexander Kanavin 
wrote:

> New meson more or less forces one of 'bfd', 'lfd' or 'gold' for that
> option (both as 'ld' in cross file and in LD from environment), as it is
> passed directly to -fuse-ld, and that option takes only the three
> variants.You can't place the actual binary name there.
>

That’s fine I guess we don’t need to set it here then
Perhaps. If meson expect compiler driver to be always called as LD that
would be a problem for packages which currently might be using bare linker
but perhaps those packages don’t use meson so it would be fine


> There is a use case for letting meson recipes choose what they want for a
> linker, but that's an enhancement for some other time.
>
> Alex
>
> On Tue, 21 Jan 2020 at 19:44, Khem Raj  wrote:
>
>> On Mon, Jan 20, 2020 at 9:28 AM Alexander Kanavin
>>  wrote:
>> >
>> > Signed-off-by: Alexander Kanavin 
>> > ---
>> >  meta/classes/meson.bbclass   |  9 -
>> >  meta/recipes-devtools/meson/meson.inc|  4 ++--
>> >  .../0001-Make-CPU-family-warnings-fatal.patch| 12 ++--
>> >  ...-do-not-manipulate-the-environment-when.patch | 16 
>> >  ...-Support-building-allarch-recipes-again.patch |  6 +++---
>> >  .../meson/meson/0003-native_bindir.patch | 16 
>> >  .../meson/{meson_0.52.1.bb => meson_0.53.0.bb}   |  0
>> >  ...meson_0.52.1.bb => nativesdk-meson_0.53.0.bb} |  0
>> >  8 files changed, 35 insertions(+), 28 deletions(-)
>> >  rename meta/recipes-devtools/meson/{meson_0.52.1.bb => meson_0.53.0.bb}
>> (100%)
>> >  rename meta/recipes-devtools/meson/{nativesdk-meson_0.52.1.bb =>
>> nativesdk-meson_0.53.0.bb} (100%)
>> >
>> > diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
>> > index 1ef34a999c8..1837c9468e6 100644
>> > --- a/meta/classes/meson.bbclass
>> > +++ b/meta/classes/meson.bbclass
>> > @@ -85,13 +85,16 @@ addtask write_config before do_configure
>> >  do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS
>> CXXFLAGS LDFLAGS"
>> >  do_write_config() {
>> >  # This needs to be Py to split the args into single-element lists
>> > +
>> > +# Meson requires ld to be 'bfd, 'lld' or 'gold' from 0.53 onwards
>> > +#
>> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
>> >  cat >${WORKDIR}/meson.cross <> >  [binaries]
>> >  c = ${@meson_array('CC', d)}
>> >  cpp = ${@meson_array('CXX', d)}
>> >  ar = ${@meson_array('AR', d)}
>> >  nm = ${@meson_array('NM', d)}
>> > -ld = ${@meson_array('LD', d)}
>> > +ld = 'bfd'
>>
>> hardcoding to bfg would ignore gold or lld if users want to use those
>> linkers. Since its a fallback
>> and this expects linker to be invoked by compiler driver, since its
>> simply converting into -fuse-ld=
>> option to compiler, whereas in OE the var LD is set to represent bare
>> linker. Perhaps leaving it unset is
>> better, we already have LD set in env.
>>
>> >  strip = ${@meson_array('STRIP', d)}
>> >  readelf = ${@meson_array('READELF', d)}
>> >  pkgconfig = 'pkg-config'
>> > @@ -122,6 +125,10 @@ EOF
>> >  CONFIGURE_FILES = "meson.build"
>> >
>> >  meson_do_configure() {
>> > +# Meson requires this to be 'bfd, 'lld' or 'gold' from 0.53 onwards
>> > +#
>> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
>> > +unset LD
>> > +
>> >  # Work around "Meson fails if /tmp is mounted with noexec #2972"
>> >  mkdir -p "${B}/meson-private/tmp"
>> >  export TMPDIR="${B}/meson-private/tmp"
>> > diff --git a/meta/recipes-devtools/meson/meson.inc
>> b/meta/recipes-devtools/meson/meson.inc
>> > index 881a14c7f0a..c0ce7d338bc 100644
>> > --- a/meta/recipes-devtools/meson/meson.inc
>> > +++ b/meta/recipes-devtools/meson/meson.inc
>> > @@ -17,8 +17,8 @@ SRC_URI = "
>> https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
>> >
>>  file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \
>> >
>>  file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
>> > "
>> > -SRC_URI[sha256sum] =
>> "0c277472e49950a5537e3de3e60c57b80dbf425788470a1a8ed27446128fc035"
>> > -SRC_URI[md5sum] = "a5f0c99567d772508f649a28ded7f8ad"
>> > +SRC_URI[sha256sum] =
>> "035e75993ab6fa6c9ebf902b835c64cf397a763eb8e65c9bb6e1cc9730a9d3f6"
>> > +SRC_URI[md5sum] = "3a0313d040ded973d84cbec368c2e1d3"
>> >
>> >  SRC_URI_append_class-native = " \
>> >  file://0001-Make-CPU-family-warnings-fatal.patch \
>> > 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 d4264cee526..74d5b4ca66e 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,4 +1,4 @@
>> > -From cd980c763f11cfd928255346cc7e86f24add985e Mon 

Re: [OE-core] [PATCH 24/24] meson: update 0.52.1 -> 0.53.0

2020-01-23 Thread Alexander Kanavin
New meson more or less forces one of 'bfd', 'lfd' or 'gold' for that option
(both as 'ld' in cross file and in LD from environment), as it is passed
directly to -fuse-ld, and that option takes only the three variants.You
can't place the actual binary name there.

There is a use case for letting meson recipes choose what they want for a
linker, but that's an enhancement for some other time.

Alex

On Tue, 21 Jan 2020 at 19:44, Khem Raj  wrote:

> On Mon, Jan 20, 2020 at 9:28 AM Alexander Kanavin
>  wrote:
> >
> > Signed-off-by: Alexander Kanavin 
> > ---
> >  meta/classes/meson.bbclass   |  9 -
> >  meta/recipes-devtools/meson/meson.inc|  4 ++--
> >  .../0001-Make-CPU-family-warnings-fatal.patch| 12 ++--
> >  ...-do-not-manipulate-the-environment-when.patch | 16 
> >  ...-Support-building-allarch-recipes-again.patch |  6 +++---
> >  .../meson/meson/0003-native_bindir.patch | 16 
> >  .../meson/{meson_0.52.1.bb => meson_0.53.0.bb}   |  0
> >  ...meson_0.52.1.bb => nativesdk-meson_0.53.0.bb} |  0
> >  8 files changed, 35 insertions(+), 28 deletions(-)
> >  rename meta/recipes-devtools/meson/{meson_0.52.1.bb => meson_0.53.0.bb}
> (100%)
> >  rename meta/recipes-devtools/meson/{nativesdk-meson_0.52.1.bb =>
> nativesdk-meson_0.53.0.bb} (100%)
> >
> > diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
> > index 1ef34a999c8..1837c9468e6 100644
> > --- a/meta/classes/meson.bbclass
> > +++ b/meta/classes/meson.bbclass
> > @@ -85,13 +85,16 @@ addtask write_config before do_configure
> >  do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS
> CXXFLAGS LDFLAGS"
> >  do_write_config() {
> >  # This needs to be Py to split the args into single-element lists
> > +
> > +# Meson requires ld to be 'bfd, 'lld' or 'gold' from 0.53 onwards
> > +#
> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
> >  cat >${WORKDIR}/meson.cross < >  [binaries]
> >  c = ${@meson_array('CC', d)}
> >  cpp = ${@meson_array('CXX', d)}
> >  ar = ${@meson_array('AR', d)}
> >  nm = ${@meson_array('NM', d)}
> > -ld = ${@meson_array('LD', d)}
> > +ld = 'bfd'
>
> hardcoding to bfg would ignore gold or lld if users want to use those
> linkers. Since its a fallback
> and this expects linker to be invoked by compiler driver, since its
> simply converting into -fuse-ld=
> option to compiler, whereas in OE the var LD is set to represent bare
> linker. Perhaps leaving it unset is
> better, we already have LD set in env.
>
> >  strip = ${@meson_array('STRIP', d)}
> >  readelf = ${@meson_array('READELF', d)}
> >  pkgconfig = 'pkg-config'
> > @@ -122,6 +125,10 @@ EOF
> >  CONFIGURE_FILES = "meson.build"
> >
> >  meson_do_configure() {
> > +# Meson requires this to be 'bfd, 'lld' or 'gold' from 0.53 onwards
> > +#
> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
> > +unset LD
> > +
> >  # Work around "Meson fails if /tmp is mounted with noexec #2972"
> >  mkdir -p "${B}/meson-private/tmp"
> >  export TMPDIR="${B}/meson-private/tmp"
> > diff --git a/meta/recipes-devtools/meson/meson.inc
> b/meta/recipes-devtools/meson/meson.inc
> > index 881a14c7f0a..c0ce7d338bc 100644
> > --- a/meta/recipes-devtools/meson/meson.inc
> > +++ b/meta/recipes-devtools/meson/meson.inc
> > @@ -17,8 +17,8 @@ SRC_URI = "
> https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
> >
>  file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \
> >
>  file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
> > "
> > -SRC_URI[sha256sum] =
> "0c277472e49950a5537e3de3e60c57b80dbf425788470a1a8ed27446128fc035"
> > -SRC_URI[md5sum] = "a5f0c99567d772508f649a28ded7f8ad"
> > +SRC_URI[sha256sum] =
> "035e75993ab6fa6c9ebf902b835c64cf397a763eb8e65c9bb6e1cc9730a9d3f6"
> > +SRC_URI[md5sum] = "3a0313d040ded973d84cbec368c2e1d3"
> >
> >  SRC_URI_append_class-native = " \
> >  file://0001-Make-CPU-family-warnings-fatal.patch \
> > 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 d4264cee526..74d5b4ca66e 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,4 +1,4 @@
> > -From cd980c763f11cfd928255346cc7e86f24add985e Mon Sep 17 00:00:00 2001
> > +From 8ce7a1ddbc9b7775568a98fcd50e39a01513c902 Mon Sep 17 00:00:00 2001
> >  From: Ross Burton 
> >  Date: Tue, 3 Jul 2018 13:59:09 +0100
> >  Subject: [PATCH] Make CPU family warnings fatal
> > @@ -12,10 +12,10 @@ Signed-off-by: Ross Burton 
> >   2 files changed, 2 insertions(+), 4 deletions(-)
> >
> >  diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
> > -index 29d7422..5fb00a4 100644
> > +index 

Re: [OE-core] [PATCH 24/24] meson: update 0.52.1 -> 0.53.0

2020-01-21 Thread Khem Raj
On Mon, Jan 20, 2020 at 9:28 AM Alexander Kanavin
 wrote:
>
> Signed-off-by: Alexander Kanavin 
> ---
>  meta/classes/meson.bbclass   |  9 -
>  meta/recipes-devtools/meson/meson.inc|  4 ++--
>  .../0001-Make-CPU-family-warnings-fatal.patch| 12 ++--
>  ...-do-not-manipulate-the-environment-when.patch | 16 
>  ...-Support-building-allarch-recipes-again.patch |  6 +++---
>  .../meson/meson/0003-native_bindir.patch | 16 
>  .../meson/{meson_0.52.1.bb => meson_0.53.0.bb}   |  0
>  ...meson_0.52.1.bb => nativesdk-meson_0.53.0.bb} |  0
>  8 files changed, 35 insertions(+), 28 deletions(-)
>  rename meta/recipes-devtools/meson/{meson_0.52.1.bb => meson_0.53.0.bb} 
> (100%)
>  rename meta/recipes-devtools/meson/{nativesdk-meson_0.52.1.bb => 
> nativesdk-meson_0.53.0.bb} (100%)
>
> diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
> index 1ef34a999c8..1837c9468e6 100644
> --- a/meta/classes/meson.bbclass
> +++ b/meta/classes/meson.bbclass
> @@ -85,13 +85,16 @@ addtask write_config before do_configure
>  do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS 
> LDFLAGS"
>  do_write_config() {
>  # This needs to be Py to split the args into single-element lists
> +
> +# Meson requires ld to be 'bfd, 'lld' or 'gold' from 0.53 onwards
> +# 
> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
>  cat >${WORKDIR}/meson.cross <  [binaries]
>  c = ${@meson_array('CC', d)}
>  cpp = ${@meson_array('CXX', d)}
>  ar = ${@meson_array('AR', d)}
>  nm = ${@meson_array('NM', d)}
> -ld = ${@meson_array('LD', d)}
> +ld = 'bfd'

hardcoding to bfg would ignore gold or lld if users want to use those
linkers. Since its a fallback
and this expects linker to be invoked by compiler driver, since its
simply converting into -fuse-ld=
option to compiler, whereas in OE the var LD is set to represent bare
linker. Perhaps leaving it unset is
better, we already have LD set in env.

>  strip = ${@meson_array('STRIP', d)}
>  readelf = ${@meson_array('READELF', d)}
>  pkgconfig = 'pkg-config'
> @@ -122,6 +125,10 @@ EOF
>  CONFIGURE_FILES = "meson.build"
>
>  meson_do_configure() {
> +# Meson requires this to be 'bfd, 'lld' or 'gold' from 0.53 onwards
> +# 
> https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
> +unset LD
> +
>  # Work around "Meson fails if /tmp is mounted with noexec #2972"
>  mkdir -p "${B}/meson-private/tmp"
>  export TMPDIR="${B}/meson-private/tmp"
> diff --git a/meta/recipes-devtools/meson/meson.inc 
> b/meta/recipes-devtools/meson/meson.inc
> index 881a14c7f0a..c0ce7d338bc 100644
> --- a/meta/recipes-devtools/meson/meson.inc
> +++ b/meta/recipes-devtools/meson/meson.inc
> @@ -17,8 +17,8 @@ SRC_URI = 
> "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
> 
> file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \
> 
> file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
> "
> -SRC_URI[sha256sum] = 
> "0c277472e49950a5537e3de3e60c57b80dbf425788470a1a8ed27446128fc035"
> -SRC_URI[md5sum] = "a5f0c99567d772508f649a28ded7f8ad"
> +SRC_URI[sha256sum] = 
> "035e75993ab6fa6c9ebf902b835c64cf397a763eb8e65c9bb6e1cc9730a9d3f6"
> +SRC_URI[md5sum] = "3a0313d040ded973d84cbec368c2e1d3"
>
>  SRC_URI_append_class-native = " \
>  file://0001-Make-CPU-family-warnings-fatal.patch \
> 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 d4264cee526..74d5b4ca66e 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,4 +1,4 @@
> -From cd980c763f11cfd928255346cc7e86f24add985e Mon Sep 17 00:00:00 2001
> +From 8ce7a1ddbc9b7775568a98fcd50e39a01513c902 Mon Sep 17 00:00:00 2001
>  From: Ross Burton 
>  Date: Tue, 3 Jul 2018 13:59:09 +0100
>  Subject: [PATCH] Make CPU family warnings fatal
> @@ -12,10 +12,10 @@ Signed-off-by: Ross Burton 
>   2 files changed, 2 insertions(+), 4 deletions(-)
>
>  diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
> -index 29d7422..5fb00a4 100644
> +index 0f277a7..24578ea 100644
>  --- a/mesonbuild/envconfig.py
>  +++ b/mesonbuild/envconfig.py
> -@@ -190,7 +190,7 @@ class MachineInfo:
> +@@ -192,7 +192,7 @@ class MachineInfo:
>
>   cpu_family = literal['cpu_family']
>   if cpu_family not in known_cpu_families:
> @@ -25,15 +25,15 @@ index 29d7422..5fb00a4 100644
>   endian = literal['endian']
>   if endian not in ('little', 'big'):
>  diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
> -index a9bc2b8..b91c8da 100644
> +index dc8b14f..3aab71e 100644
>  --- a/mesonbuild/environment.py
>  

Re: [OE-core] [PATCH 24/24] meson: update 0.52.1 -> 0.53.0

2020-01-21 Thread Richard Purdie
On Mon, 2020-01-20 at 18:25 +0100, Alexander Kanavin wrote:
> Signed-off-by: Alexander Kanavin 
> ---
>  meta/classes/meson.bbclass   |  9 -
>  meta/recipes-devtools/meson/meson.inc|  4 ++--
>  .../0001-Make-CPU-family-warnings-fatal.patch| 12 ++--
>  ...-do-not-manipulate-the-environment-when.patch | 16 
>  ...-Support-building-allarch-recipes-again.patch |  6 +++---
>  .../meson/meson/0003-native_bindir.patch | 16 
>  .../meson/{meson_0.52.1.bb => meson_0.53.0.bb}   |  0
>  ...meson_0.52.1.bb => nativesdk-meson_0.53.0.bb} |  0
>  8 files changed, 35 insertions(+), 28 deletions(-)
>  rename meta/recipes-devtools/meson/{meson_0.52.1.bb => meson_0.53.0.bb} 
> (100%)
>  rename meta/recipes-devtools/meson/{nativesdk-meson_0.52.1.bb => 
> nativesdk-meson_0.53.0.bb} (100%)

This breaks something in the SDK which then fails testing:

https://autobuilder.yoctoproject.org/typhoon/#/builders/62/builds/1475

(but many other similar failures).

Cheers,

Richard

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 24/24] meson: update 0.52.1 -> 0.53.0

2020-01-20 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin 
---
 meta/classes/meson.bbclass   |  9 -
 meta/recipes-devtools/meson/meson.inc|  4 ++--
 .../0001-Make-CPU-family-warnings-fatal.patch| 12 ++--
 ...-do-not-manipulate-the-environment-when.patch | 16 
 ...-Support-building-allarch-recipes-again.patch |  6 +++---
 .../meson/meson/0003-native_bindir.patch | 16 
 .../meson/{meson_0.52.1.bb => meson_0.53.0.bb}   |  0
 ...meson_0.52.1.bb => nativesdk-meson_0.53.0.bb} |  0
 8 files changed, 35 insertions(+), 28 deletions(-)
 rename meta/recipes-devtools/meson/{meson_0.52.1.bb => meson_0.53.0.bb} (100%)
 rename meta/recipes-devtools/meson/{nativesdk-meson_0.52.1.bb => 
nativesdk-meson_0.53.0.bb} (100%)

diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
index 1ef34a999c8..1837c9468e6 100644
--- a/meta/classes/meson.bbclass
+++ b/meta/classes/meson.bbclass
@@ -85,13 +85,16 @@ addtask write_config before do_configure
 do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS 
LDFLAGS"
 do_write_config() {
 # This needs to be Py to split the args into single-element lists
+
+# Meson requires ld to be 'bfd, 'lld' or 'gold' from 0.53 onwards
+# 
https://github.com/mesonbuild/meson/commit/ef9aeb188ea2bc7353e59916c18901cde90fa2b3
 cat >${WORKDIR}/meson.cross 
    
    

5 matches