summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe/vala.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes-recipe/vala.bbclass')
-rw-r--r--meta/classes-recipe/vala.bbclass30
1 files changed, 30 insertions, 0 deletions
diff --git a/meta/classes-recipe/vala.bbclass b/meta/classes-recipe/vala.bbclass
new file mode 100644
index 0000000000..460ddb36f0
--- /dev/null
+++ b/meta/classes-recipe/vala.bbclass
@@ -0,0 +1,30 @@
+#
+# Copyright OpenEmbedded Contributors
+#
+# SPDX-License-Identifier: MIT
+#
+
+# Everyone needs vala-native and targets need vala, too,
+# because that is where target builds look for .vapi files.
+#
+VALADEPENDS = ""
+VALADEPENDS:class-target = "vala"
+DEPENDS:append = " vala-native ${VALADEPENDS}"
+
+# Our patched version of Vala looks in STAGING_DATADIR for .vapi files
+export STAGING_DATADIR
+# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files
+export XDG_DATA_DIRS = "${STAGING_DATADIR}:${STAGING_LIBDIR}"
+
+# Package additional files
+FILES:${PN}-dev += "\
+ ${datadir}/vala/vapi/*.vapi \
+ ${datadir}/vala/vapi/*.deps \
+ ${datadir}/gir-1.0 \
+"
+
+# Remove vapigen.m4 that is bundled with tarballs
+# because it does not yet have our cross-compile fixes
+do_configure:prepend() {
+ rm -f ${S}/m4/vapigen.m4
+}