Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/2] package/pkg-meson.mk: add FOO_MESON_EXTRA_PROPERTIES
Date: Tue, 10 Mar 2020 15:07:26 +0100	[thread overview]
Message-ID: <20200310150726.6ace1450@gmx.net> (raw)
In-Reply-To: <20200310124459.908611-2-john@metanate.com>

Hello John,

On Tue, 10 Mar 2020 12:44:58 +0000, John Keeping <john@metanate.com> wrote:

> With autoconf packages, we often specify ac_cv_func_... cached values to
> avoid runtime checks during configure.  With meson the equivalent is
> setting properties in cross-compilation.conf which we cannot do in
> Buildroot at the moment.
>
> For example, libglib2 used to set ac_cv_func_printf_unix98 and
> ac_cv_func_vsnprintf_c99 so that the system printf could be used, but
> with the conversion to meson these checks fail and the gnulib fallback
> is used.
>
> Add infrastructure in the same way as FOO_MESON_EXTRA_BINARIES to allow
> per-package modification to the cross-compilation properties.
>
> Signed-off-by: John Keeping <john@metanate.com>
> ---
>  docs/manual/adding-packages-meson.txt | 8 ++++++++
>  package/pkg-meson.mk                  | 4 ++++
>  2 files changed, 12 insertions(+)
>
> diff --git a/docs/manual/adding-packages-meson.txt b/docs/manual/adding-packages-meson.txt
> index e84bf7f60a..c28828243c 100644
> --- a/docs/manual/adding-packages-meson.txt
> +++ b/docs/manual/adding-packages-meson.txt
> @@ -116,6 +116,14 @@ will therefore only use a few of them.
>    single quotes. By default, empty. Note that Buildroot already sets the
>    correct values for +c+, +cpp+, +ar+, +strip+, and +pkgconfig+.
>
> +* +FOO_MESON_EXTRA_PROPERTIES+, to specify a space-separated list of
> +  properties to add to the `[properties]` section of the meson
> +  `cross-compilation.conf` configuration file. The format is
> +  `property-name='value'`, with no space around the +=+ sign, and with the
> +  value between single quotes. By default, empty. Note that Buildroot
> +  already sets values for +needs_exe_wrapper+, +c_args+, +c_link_args+,
> +  +cpp_args+, +cpp_link_args+, +sys_root+, and +pkg_config_libdir+.
> +

The description does not fit the usage in the follow-up patch
(...value between single quoates...):

+LIBGLIB2_MESON_EXTRA_PROPERTIES = \
+	have_c99_vsnprintf=true \
+	have_c99_snprintf=true \
+	have_unix98_printf=true
+

With this fixed you can add my

Reviewed-by: Peter Seiderer <ps.report@gmx.net>

Regards,
Peter

>  * +FOO_NINJA_ENV+, to specify additional environment variables to pass to
>    +ninja+, meson companion tool in charge of the build operations. By default,
>    empty.
> diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> index 6ac3f79fe9..4df1326cad 100644
> --- a/package/pkg-meson.mk
> +++ b/package/pkg-meson.mk
> @@ -80,6 +80,10 @@ define $(2)_CONFIGURE_CMDS
>  		$$(foreach x,$$($(2)_MESON_EXTRA_BINARIES), \
>  	            s:$$$$:\n$$(x): ; \
>  		) }" \
> +	    -e "/^\[properties\]$$$$/ { \
> +		$$(foreach x,$$($(2)_MESON_EXTRA_PROPERTIES), \
> +		    s:$$$$:\n$$(x): ; \
> +		) }" \
>  	    package/meson/cross-compilation.conf.in \
>  	    > $$($$(PKG)_SRCDIR)/build/cross-compilation.conf
>  	PATH=$$(BR_PATH) $$($$(PKG)_CONF_ENV) $$(MESON) \

  reply	other threads:[~2020-03-10 14:07 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-10 12:44 [Buildroot] [PATCH 0/2] pkg-meson/libglib2: restore use of system printf John Keeping
2020-03-10 12:44 ` [Buildroot] [PATCH 1/2] package/pkg-meson.mk: add FOO_MESON_EXTRA_PROPERTIES John Keeping
2020-03-10 14:07   ` Peter Seiderer [this message]
2020-03-10 14:42     ` John Keeping
2020-03-10 14:59       ` Peter Seiderer
2020-03-10 12:44 ` [Buildroot] [PATCH 2/2] package/libglib2: restore use of system printf John Keeping
2020-03-10 14:13   ` Peter Seiderer
2020-03-10 14:45     ` John Keeping
2020-03-12 20:38     ` Adam Duskett

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=20200310150726.6ace1450@gmx.net \
    --to=ps.report@gmx.net \
    --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