diff options
author | Khem Raj <raj.khem@gmail.com> | 2021-11-11 16:59:23 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-11-13 16:08:14 +0000 |
commit | c75a9439154834d45b2be1ac95682586b4409fb4 (patch) | |
tree | f2e79ce55c133dc727e20dff2ea9a968570b6463 /meta | |
parent | ba251b128baf05fea8ad62bc42dd98584e99ad28 (diff) | |
download | openembedded-core-contrib-c75a9439154834d45b2be1ac95682586b4409fb4.tar.gz |
gobject-introspection: Add -Dintrospection only when GIR_MESON_OPTION is not empty
meson now does not allow unknown options which means we have to be
mindful of adding -Dintrospection unconditionally and provide an option
to recipes to set GIR_MESON_OPTION = "" and when recipe does that then
do not add -D<Dintrospection> option to meson. This will help recipes to
use meson 60.x+ just by adding
GIR_MESON_OPTION = ""
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/gobject-introspection.bbclass | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/meta/classes/gobject-introspection.bbclass b/meta/classes/gobject-introspection.bbclass index 822a226d5f..4db1b362d9 100644 --- a/meta/classes/gobject-introspection.bbclass +++ b/meta/classes/gobject-introspection.bbclass @@ -14,16 +14,18 @@ GIR_MESON_OPTION ?= 'introspection' GIR_MESON_ENABLE_FLAG ?= 'true' GIR_MESON_DISABLE_FLAG ?= 'false' +# Define g-i options such that they can be disabled completely when GIR_MESON_OPTION is empty +GIRMESONTARGET = "-D${GIR_MESON_OPTION}=${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GIR_MESON_ENABLE_FLAG}', '${GIR_MESON_DISABLE_FLAG}', d)} " +GIRMESONBUILD = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} " # Auto enable/disable based on GI_DATA_ENABLED EXTRA_OECONF:prepend:class-target = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection', '--disable-introspection', d)} " -EXTRA_OEMESON:prepend:class-target = "-D${GIR_MESON_OPTION}=${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GIR_MESON_ENABLE_FLAG}', '${GIR_MESON_DISABLE_FLAG}', d)} " - +EXTRA_OEMESON:prepend:class-target = "${@['', '${GIRMESONTARGET}'][d.getVar('GIR_MESON_OPTION') != '']}" # When building native recipes, disable introspection, as it is not necessary, # pulls in additional dependencies, and makes build times longer EXTRA_OECONF:prepend:class-native = "--disable-introspection " EXTRA_OECONF:prepend:class-nativesdk = "--disable-introspection " -EXTRA_OEMESON:prepend:class-native = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} " -EXTRA_OEMESON:prepend:class-nativesdk = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} " +EXTRA_OEMESON:prepend:class-native = "${@['', '${GIRMESONBUILD}'][d.getVar('GIR_MESON_OPTION') != '']}" +EXTRA_OEMESON:prepend:class-nativesdk = "${@['', '${GIRMESONBUILD}'][d.getVar('GIR_MESON_OPTION') != '']}" # Generating introspection data depends on a combination of native and target # introspection tools, and qemu to run the target tools. |