summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xmeta/recipes-devtools/meson/meson/meson-wrapper2
-rw-r--r--meta/recipes-devtools/meson/meson_0.63.0.bb34
2 files changed, 30 insertions, 6 deletions
diff --git a/meta/recipes-devtools/meson/meson/meson-wrapper b/meta/recipes-devtools/meson/meson/meson-wrapper
index 8fafaad975..c62007f507 100755
--- a/meta/recipes-devtools/meson/meson/meson-wrapper
+++ b/meta/recipes-devtools/meson/meson/meson-wrapper
@@ -1,7 +1,7 @@
1#!/bin/sh 1#!/bin/sh
2 2
3if [ -z "$OECORE_NATIVE_SYSROOT" ]; then 3if [ -z "$OECORE_NATIVE_SYSROOT" ]; then
4 echo "OECORE_NATIVE_SYSROOT not set; are you in a Yocto SDK environment?" >&2 4 exec "meson.real" "$@"
5fi 5fi
6 6
7if [ -z "$SSL_CERT_DIR" ]; then 7if [ -z "$SSL_CERT_DIR" ]; then
diff --git a/meta/recipes-devtools/meson/meson_0.63.0.bb b/meta/recipes-devtools/meson/meson_0.63.0.bb
index 42e64e351f..890f47506f 100644
--- a/meta/recipes-devtools/meson/meson_0.63.0.bb
+++ b/meta/recipes-devtools/meson/meson_0.63.0.bb
@@ -75,7 +75,7 @@ def generate_native_link_template(d):
75 75
76 return repr(val) 76 return repr(val)
77 77
78do_install:append:class-nativesdk() { 78install_templates() {
79 install -d ${D}${datadir}/meson 79 install -d ${D}${datadir}/meson
80 80
81 cat >${D}${datadir}/meson/meson.native.template <<EOF 81 cat >${D}${datadir}/meson/meson.native.template <<EOF
@@ -117,11 +117,19 @@ needs_exe_wrapper = true
117sys_root = @OECORE_TARGET_SYSROOT 117sys_root = @OECORE_TARGET_SYSROOT
118 118
119[host_machine] 119[host_machine]
120system = '${SDK_OS}' 120system = '$host_system'
121cpu_family = '${@meson_cpu_family("SDK_ARCH", d)}' 121cpu_family = '$host_cpu_family'
122cpu = '${SDK_ARCH}' 122cpu = '$host_cpu'
123endian = '${@meson_endian("SDK", d)}' 123endian = '$host_endian'
124EOF 124EOF
125}
126
127do_install:append:class-nativesdk() {
128 host_system=${SDK_OS}
129 host_cpu_family=${@meson_cpu_family("SDK_ARCH", d)}
130 host_cpu=${SDK_ARCH}
131 host_endian=${@meson_endian("SDK", d)}
132 install_templates
125 133
126 install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d 134 install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
127 install -m 0755 ${WORKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/ 135 install -m 0755 ${WORKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
@@ -132,3 +140,19 @@ EOF
132} 140}
133 141
134FILES:${PN}:append:class-nativesdk = "${datadir}/meson ${SDKPATHNATIVE}" 142FILES:${PN}:append:class-nativesdk = "${datadir}/meson ${SDKPATHNATIVE}"
143
144do_install:append:class-native() {
145 host_system=${HOST_OS}
146 host_cpu_family=${@meson_cpu_family("HOST_ARCH", d)}
147 host_cpu=${HOST_ARCH}
148 host_endian=${@meson_endian("HOST", d)}
149 install_templates
150
151 install -d ${D}${datadir}/post-relocate-setup.d
152 install -m 0755 ${WORKDIR}/meson-setup.py ${D}${datadir}/post-relocate-setup.d/
153
154 # We need to wrap the real meson with a thin wrapper that substitues native/cross files
155 # when running in a direct SDK environment.
156 mv ${D}${bindir}/meson ${D}${bindir}/meson.real
157 install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
158}