vala: add vala/valac wrapper

vala/valac can use gir and vapi data files installed by other packages,
but since these are normally installed to staging and host-vala looks
for them in the host directory (logically) this leads to failure.
So wrap them to call the real tool and add this information via
command-line parameters to them.

This is required for vala-in-vala bindings (vapi).

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Gustavo Zacarias 2016-03-09 10:15:43 -03:00 committed by Thomas Petazzoni
parent 360a384862
commit 6811cf1247
2 changed files with 15 additions and 0 deletions

View file

@ -0,0 +1,2 @@
#!/bin/sh
$0-@VALA_VERSION@ --vapidir=${STAGING_DIR}/usr/share/vala/vapi --girdir=${STAGING_DIR}/usr/share/gir-1.0 $@

View file

@ -16,4 +16,17 @@ HOST_VALA_DEPENDENCIES = host-bison host-flex host-libglib2
# available".
HOST_VALA_CONF_ENV = ac_cv_path_XSLTPROC=:
# We wrap vala & valac to point to the proper gir and vapi data dirs
# Otherwise we'll get host directory data which isn't enough
define HOST_VALA_INSTALL_WRAPPER
$(INSTALL) -D -m 0755 package/vala/vala-wrapper \
$(HOST_DIR)/usr/bin/vala
$(INSTALL) -D -m 0755 package/vala/vala-wrapper \
$(HOST_DIR)/usr/bin/valac
$(SED) 's,@VALA_VERSION@,$(VALA_VERSION_MAJOR),' \
$(HOST_DIR)/usr/bin/vala \
$(HOST_DIR)/usr/bin/valac
endef
HOST_VALA_POST_INSTALL_HOOKS += HOST_VALA_INSTALL_WRAPPER
$(eval $(host-autotools-package))