]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
meson: clean up the native template in nativesdk builds
authorRoss Burton <ross.burton@arm.com>
Sat, 10 May 2025 08:43:56 +0000 (09:43 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 12 May 2025 09:52:52 +0000 (10:52 +0100)
In a nativesdk build, the native build template should be minimal as it
just needs to ensure that Meson can link with libraries in the SDK's
native sysroot.

Specifically, it shouldn't be passing BUILD_* flags to Meson as these
are for the Yocto build host, not the SDK user.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/meson/meson_1.8.0.bb

index 5d4fc39751b52fbd99882038e4285d158413ef82..78e0a0ed805ca991dc53118da25ee93152f170af 100644 (file)
@@ -86,6 +86,21 @@ cpp_link_args = ${@generate_native_link_template(d)}
 EOF
 }
 
+install_nativesdk_template() {
+    install -d ${D}${datadir}/meson
+
+    cat >${D}${datadir}/meson/meson.native.template <<EOF
+[binaries]
+pkg-config = 'pkg-config-native'
+
+[built-in options]
+c_args = ['-isystem@{OECORE_NATIVE_SYSROOT}${includedir_native}']
+c_link_args = ['-L@{OECORE_NATIVE_SYSROOT}${libdir_native}', '-L@{OECORE_NATIVE_SYSROOT}${base_libdir_native}',]
+cpp_args = ['-isystem@{OECORE_NATIVE_SYSROOT}${includedir_native}']
+cpp_link_args = ['-L@{OECORE_NATIVE_SYSROOT}${libdir_native}', '-L@{OECORE_NATIVE_SYSROOT}${base_libdir_native}',]
+EOF
+}
+
 install_cross_template() {
     install -d ${D}${datadir}/meson
 
@@ -117,7 +132,7 @@ EOF
 }
 
 do_install:append:class-nativesdk() {
-    install_native_template
+    install_nativesdk_template
     install_cross_template
 
     install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d