Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Arnout Vandecappelle <arnout@mind.be>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/3] vala: add vala/valac wrapper
Date: Tue, 23 Feb 2016 00:48:27 +0100	[thread overview]
Message-ID: <56CB9E4B.20004@mind.be> (raw)
In-Reply-To: <1454428908-7183-1-git-send-email-gustavo@zacarias.com.ar>

On 02/02/16 17:01, Gustavo Zacarias wrote:
> 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 libgee-granite vala-in-vala bindings.
> 
> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
> ---
>  package/vala/vala-wrapper |  2 ++
>  package/vala/vala.mk      | 18 ++++++++++++++++++
>  2 files changed, 20 insertions(+)
>  create mode 100644 package/vala/vala-wrapper
> 
> diff --git a/package/vala/vala-wrapper b/package/vala/vala-wrapper
> new file mode 100644
> index 0000000..ea0bd09
> --- /dev/null
> +++ b/package/vala/vala-wrapper
> @@ -0,0 +1,2 @@
> +#!/bin/sh
> +$0- at VALA_VERSION@ --vapidir=@STAGING_DIR@/usr/share/vala/vapi --girdir=@STAGING_DIR@/usr/share/gir-1.0 $@

 This makes it non-relocatable. Instead, just use the ${STAGING_DIR} that is
passed in the environment. That means you can't use vala/c outside of buildroot,
but I don't think that's an issue, right?

> diff --git a/package/vala/vala.mk b/package/vala/vala.mk
> index 56d4db3..5267f68 100644
> --- a/package/vala/vala.mk
> +++ b/package/vala/vala.mk
> @@ -16,4 +16,22 @@ 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, at VALA_VERSION@,$(VALA_VERSION_MAJOR),' \
> +		$(HOST_DIR)/usr/bin/vala
> +	$(SED) 's, at STAGING_DIR@,$(STAGING_DIR),g' \
> +		$(HOST_DIR)/usr/bin/vala
> +	$(SED) 's, at VALA_VERSION@,$(VALA_VERSION_MAJOR),' \
> +		$(HOST_DIR)/usr/bin/valac

 I would handle vala and valac in a singel SED line.

 Regards,
 Arnout

> +	$(SED) 's, at STAGING_DIR@,$(STAGING_DIR),g' \
> +		$(HOST_DIR)/usr/bin/valac
> +endef
> +HOST_VALA_POST_INSTALL_HOOKS += HOST_VALA_INSTALL_WRAPPER
> +
>  $(eval $(host-autotools-package))
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

  parent reply	other threads:[~2016-02-22 23:48 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-02 16:01 [Buildroot] [PATCH 1/3] vala: add vala/valac wrapper Gustavo Zacarias
2016-02-02 16:01 ` [Buildroot] [PATCH 2/3] libgee: new package Gustavo Zacarias
2016-02-02 16:01 ` [Buildroot] [PATCH 3/3] granite: " Gustavo Zacarias
2016-02-21 21:28 ` [Buildroot] [PATCH 1/3] vala: add vala/valac wrapper Thomas Petazzoni
2016-02-22  1:22   ` Gustavo Zacarias
2016-02-22 23:47     ` Arnout Vandecappelle
2016-02-23  0:18       ` Gustavo Zacarias
2016-02-23  0:40         ` Arnout Vandecappelle
2016-02-23  1:06           ` Gustavo Zacarias
2016-02-23  9:42             ` Arnout Vandecappelle
2016-02-23  9:48               ` Thomas Petazzoni
2016-02-23 15:19                 ` Peter Korsgaard
2016-02-23 19:43                 ` Arnout Vandecappelle
2016-02-23 20:58                   ` Thomas Petazzoni
2016-02-23  9:10         ` Thomas Petazzoni
2016-02-22 23:48 ` Arnout Vandecappelle [this message]
2016-02-23  0:27   ` Gustavo Zacarias
2016-02-23  0:30     ` Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56CB9E4B.20004@mind.be \
    --to=arnout@mind.be \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox