1# 2# Copyright OpenEmbedded Contributors 3# 4# SPDX-License-Identifier: MIT 5# 6 7# gi-docgen is a new gnome documentation generator, which 8# seems to be a successor to gtk-doc: 9# https://gitlab.gnome.org/GNOME/gi-docgen 10 11# True if api-documentation and gobject-introspection-data are in DISTRO_FEATURES, 12# and qemu-user is in MACHINE_FEATURES, False otherwise. 13GIDOCGEN_ENABLED ?= "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation gobject-introspection-data', \ 14 bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d), 'False', d)}" 15 16# When building native recipes, disable gi-docgen, as it is not necessary, 17# pulls in additional dependencies, and makes build times longer 18GIDOCGEN_ENABLED:class-native = "False" 19GIDOCGEN_ENABLED:class-nativesdk = "False" 20 21# meson: default option name to enable/disable gi-docgen. This matches most 22# projects' configuration. In doubts - check meson_options.txt in project's 23# source path. 24GIDOCGEN_MESON_OPTION ?= 'gtk_doc' 25GIDOCGEN_MESON_ENABLE_FLAG ?= 'true' 26GIDOCGEN_MESON_DISABLE_FLAG ?= 'false' 27 28# Auto enable/disable based on GIDOCGEN_ENABLED 29EXTRA_OEMESON:prepend = "-D${GIDOCGEN_MESON_OPTION}=${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '${GIDOCGEN_MESON_ENABLE_FLAG}', '${GIDOCGEN_MESON_DISABLE_FLAG}', d)} " 30 31DEPENDS:append = "${@' gi-docgen-native gi-docgen' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}" 32 33