public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Tom Hochstein <tom.hochstein@oss.nxp.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>,
	openembedded-core@lists.openembedded.org
Cc: Ross Burton <ross.burton@arm.com>
Subject: Re: [OE-core] [PATCH v6 6/6] oeqa/sdk/meson: Skip test when SDK arch != build machine arch
Date: Wed, 16 Apr 2025 11:16:03 -0500	[thread overview]
Message-ID: <8dc80f96-3040-4cca-b534-dbfd7b801a26@oss.nxp.com> (raw)
In-Reply-To: <d375570faca49f301b13213dabd508547a0664c4.camel@linuxfoundation.org>

On 4/15/2025 5:48 AM, Richard Purdie wrote:
> [You don't often get email from richard.purdie@linuxfoundation.org. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> 
> On Fri, 2025-04-11 at 12:28 -0500, Tom Hochstein via lists.openembedded.org wrote:
>> The SDK Meson test fails when the SDK is not for the build machine:
>> ```
>> Traceback (most recent call last):
>>     File "/srv/pokybuild/yocto-worker/qemux86/build/meta/lib/oeqa/sdk/cases/meson.py", line 47, in test_epoxy
>>       self.assertNotEqual(data["build"]["c"]["exelist"], data["host"]["c"]["exelist"])
>>                           ~~~~~~~~~~~~~^^^^^
>> KeyError: 'c'
>> ```
>>
>> Skip the test in this case.
>>
>> Signed-off-by: Tom Hochstein <tom.hochstein@oss.nxp.com>
>> ---
>>   meta/lib/oeqa/sdk/cases/meson.py | 5 +++++
>>   1 file changed, 5 insertions(+)
> 
> I think this may not be quite right as I saw:
> 
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/42/builds/1370
> 
> in my build with this series applied.
> 
> Cheers,
> 
> Richard


Thanks, Richard. I'm able to reproduce this. It's specific to 
meta-ide-support.

The setup looks fine:

$ meson setup --warnlevel 1 -Degl=no -Dglx=no -Dx11=false build
meson-wrapper: Running meson with setup options: " 
--cross-file=.../poky/build/tmp/sysroots/x86_64/usr/share/meson/arm-poky-linux-gnueabi-meson.cross 
--native-file=.../poky/build/tmp/sysroots/x86_64/usr/share/meson/meson.native 
"
The Meson build system
Version: 1.7.2
...

The KeyError appears because the build machine data is empty:

$ meson introspect -i --compilers build
{
     "host": {
         "c": {
             "id": "gcc",
             "exelist": [
                 "arm-poky-linux-gnueabi-gcc",
                 "-mthumb",
                 "-mfpu=neon",
                 "-mfloat-abi=hard",
                 "-mcpu=cortex-a15",
                 "-fstack-protector-strong",
                 "-O2",
                 "-D_FORTIFY_SOURCE=2",
                 "-Wformat",
                 "-Wformat-security",
                 "-Werror=format-security",
                 "-D_TIME_BITS=64",
                 "-D_FILE_OFFSET_BITS=64",
                 "--sysroot=.../poky/build/tmp/sysroots/qemuarm"
             ],
             "linker_exelist": [
                 "arm-poky-linux-gnueabi-gcc",
                 "-mthumb",
                 "-mfpu=neon",
                 "-mfloat-abi=hard",
                 "-mcpu=cortex-a15",
                 "-fstack-protector-strong",
                 "-O2",
                 "-D_FORTIFY_SOURCE=2",
                 "-Wformat",
                 "-Wformat-security",
                 "-Werror=format-security",
                 "-D_TIME_BITS=64",
                 "-D_FILE_OFFSET_BITS=64",
                 "--sysroot=.../poky/build/tmp/sysroots/qemuarm"
             ],
             "file_suffixes": [
                 "c"
             ],
             "default_suffix": "c",
             "version": "14.2.0",
             "full_version": "arm-poky-linux-gnueabi-gcc (GCC) 14.2.0",
             "linker_id": "ld.bfd"
         }
     },
     "build": {}
}

I don't understand why. The meson.native file looks the same as for the 
standalone SDK case, and the meson machine data seems fine.

$ meson introspect -i --machines build/
{
     "host": {
         "system": "linux",
         "cpu_family": "arm",
         "cpu": "arm",
         "endian": "little",
         "kernel": null,
         "subsystem": null,
         "is_64_bit": false,
         "exe_suffix": "",
         "object_suffix": "o"
     },
     "build": {
         "system": "linux",
         "cpu_family": "x86_64",
         "cpu": "x86_64",
         "endian": "little",
         "kernel": "linux",
         "subsystem": "linux",
         "is_64_bit": true,
         "exe_suffix": "",
         "object_suffix": "o"
     },
     "target": {
         "system": "linux",
         "cpu_family": "arm",
         "cpu": "arm",
         "endian": "little",
         "kernel": null,
         "subsystem": null,
         "is_64_bit": false,
         "exe_suffix": "",
         "object_suffix": "o"
     }
}

I'm stuck.

Tom



  reply	other threads:[~2025-04-16 16:16 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-11 17:27 [PATCH v6 1/6] meson: Allow user to override setup command options Tom Hochstein
2025-04-11 17:27 ` [PATCH v6 2/6] toolchain-scripts: Add Meson settings for Yocto build SDK Tom Hochstein
2025-04-11 17:28 ` [PATCH v6 3/6] toolchain-scripts: Export meson settings for SDK builds Tom Hochstein
2025-04-11 17:28 ` [PATCH v6 4/6] meson: Fix host_machine setting for native cross-file Tom Hochstein
2025-04-11 17:28 ` [PATCH v6 5/6] oeqa/sdk/meson: improve test to validate host/build target assignments Tom Hochstein
2025-04-15  9:12   ` [OE-core] " Mathieu Dubois-Briand
2025-04-11 17:28 ` [PATCH v6 6/6] oeqa/sdk/meson: Skip test when SDK arch != build machine arch Tom Hochstein
2025-04-15 10:48   ` [OE-core] " Richard Purdie
2025-04-16 16:16     ` Tom Hochstein [this message]
     [not found]     ` <1836D8BA73D61DA5.22324@lists.openembedded.org>
2025-04-17 13:48       ` Tom Hochstein

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=8dc80f96-3040-4cca-b534-dbfd7b801a26@oss.nxp.com \
    --to=tom.hochstein@oss.nxp.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    --cc=ross.burton@arm.com \
    /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