Hi!

While investigating build issues I traced the root cause back to 
nativesdk-meson.
We are on Yocto zeus with meson-0.54.2 backported from openembedded-core master,
but this should not matter.

1. meson wrapping

nativesdk-meson creates a shell wrapper which adds --cross-file=... to the 
meson command.
Maybe this used to work on older meson releases, on recent meson it causes 
problems since
--cross-file= is only accepted by the "setup" command, which is default in 
meson.
As soon you want to use a different command such as "test", meson rejects 
--cross-file.
We noticed because our test infrastructure makes use of meson test.

2. meson.cross generation

The way you generate the cross file makes meson think it does native instead
of a cross build.
Our target arch is aarch64, although meson writes during setup:
Build machine cpu family: x86_64
Build machine cpu: x86_64
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64

...and does not switch to cross mode.


I suggest dropping the wrapper and ship a good enough meson.cross file with the 
SDK
but please do not force everyone to use it.
For example in our case we need to set exe_wrapper, root, sys_root, and 
pkg_config_libdir
in our cross file.
If you think this is a reasonable apporach, I'll happily send patches. :-)

Thanks,
//richard

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#139396): 
https://lists.openembedded.org/g/openembedded-core/message/139396
Mute This Topic: https://lists.openembedded.org/mt/74795086/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to