summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/meson.bbclass25
1 files changed, 13 insertions, 12 deletions
diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
index 5881765abb..e572344bd2 100644
--- a/meta/classes/meson.bbclass
+++ b/meta/classes/meson.bbclass
@@ -42,7 +42,8 @@ MESON_CROSS_FILE_class-target = "--cross-file ${WORKDIR}/meson.cross"
42MESON_CROSS_FILE_class-nativesdk = "--cross-file ${WORKDIR}/meson.cross" 42MESON_CROSS_FILE_class-nativesdk = "--cross-file ${WORKDIR}/meson.cross"
43 43
44def meson_array(var, d): 44def meson_array(var, d):
45 return "', '".join(d.getVar(var).split()).join(("'", "'")) 45 items = d.getVar(var).split()
46 return repr(items[0] if len(items) == 1 else items)
46 47
47addtask write_config before do_configure 48addtask write_config before do_configure
48do_write_config[vardeps] += "MESON_C_ARGS MESON_CPP_ARGS MESON_LINK_ARGS CC CXX LD AR NM STRIP READELF" 49do_write_config[vardeps] += "MESON_C_ARGS MESON_CPP_ARGS MESON_LINK_ARGS CC CXX LD AR NM STRIP READELF"
@@ -50,21 +51,21 @@ do_write_config() {
50 # This needs to be Py to split the args into single-element lists 51 # This needs to be Py to split the args into single-element lists
51 cat >${WORKDIR}/meson.cross <<EOF 52 cat >${WORKDIR}/meson.cross <<EOF
52[binaries] 53[binaries]
53c = [${@meson_array('CC', d)}] 54c = ${@meson_array('CC', d)}
54cpp = [${@meson_array('CXX', d)}] 55cpp = ${@meson_array('CXX', d)}
55ar = [${@meson_array('AR', d)}] 56ar = ${@meson_array('AR', d)}
56nm = [${@meson_array('NM', d)}] 57nm = ${@meson_array('NM', d)}
57ld = [${@meson_array('LD', d)}] 58ld = ${@meson_array('LD', d)}
58strip = [${@meson_array('STRIP', d)}] 59strip = ${@meson_array('STRIP', d)}
59readelf = [${@meson_array('READELF', d)}] 60readelf = ${@meson_array('READELF', d)}
60pkgconfig = 'pkg-config' 61pkgconfig = 'pkg-config'
61 62
62[properties] 63[properties]
63needs_exe_wrapper = true 64needs_exe_wrapper = true
64c_args = [${@meson_array('MESON_C_ARGS', d)}] 65c_args = ${@meson_array('MESON_C_ARGS', d)}
65c_link_args = [${@meson_array('MESON_LINK_ARGS', d)}] 66c_link_args = ${@meson_array('MESON_LINK_ARGS', d)}
66cpp_args = [${@meson_array('MESON_CPP_ARGS', d)}] 67cpp_args = ${@meson_array('MESON_CPP_ARGS', d)}
67cpp_link_args = [${@meson_array('MESON_LINK_ARGS', d)}] 68cpp_link_args = ${@meson_array('MESON_LINK_ARGS', d)}
68gtkdoc_exe_wrapper = '${B}/gtkdoc-qemuwrapper' 69gtkdoc_exe_wrapper = '${B}/gtkdoc-qemuwrapper'
69 70
70[host_machine] 71[host_machine]