. "${GRIMOIRE}/MESON_DEPENDS" &&
depends ragel &&

optional_depends glib2 \
                 "glib=enabled gobject=enabled" \
                 "glib=disabled gobject=disabled" \
                 "to use glib" &&

persistent_add HARFBUZZ_OPTS &&

if is_depends_enabled $SPELL glib2; then

  optional_depends gobject-introspection \
                   "introspection=enabled" \
                   "introspection=disabled" \
                   "to enable introspection for this build"
else
  list_add "HARFBUZZ_OPTS" "introspection=disabled"
fi &&

if spell_ok cairo; then
  optional_depends cairo "cairo=enabled" "cairo=disabled" \
                 "Enable tools used for command-line utilities?" &&

  if is_depends_enabled $SPELL cairo; then
    depends libpng
  fi
else
  list_add "HARFBUZZ_OPTS" "cairo=disabled" &&
  message "${PROBLEM_COLOR}cyclic ${SPELL_COLOR}cairo${PROBLEM_COLOR} optional dependency disabled until ${SPELL_COLOR}cairo${PROBLEM_COLOR} is cast${DEFAULT_COLOR}"
fi &&

optional_depends icu "icu=enabled" "icu=disabled" \
                 "Enable icu use?" &&

optional_depends freetype2 "freetype=enabled" "freetype=disabled" \
                 "Enable freetype2 use?" &&

optional_depends graphite2 "graphite2=enabled" "graphite2=disabled" \
                 "Enable graphite2 use?" &&

optional_depends gtk-doc "docs=enabled" "docs=disabled" \
                 "Enable gtk-doc to build documentation?"
