linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Andrew Jeffery" <andrew@aj.id.au>
To: "Bartosz Golaszewski" <brgl@bgdev.pl>,
	"Viresh Kumar" <viresh.kumar@linaro.org>,
	"Kent Gibson" <warthog618@gmail.com>,
	"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
	"Linus Walleij" <linus.walleij@linaro.org>
Cc: linux-gpio@vger.kernel.org
Subject: Re: [libgpiod][WIP PATCH 0/2] Convert the build from autotools to meson
Date: Thu, 08 Dec 2022 14:53:32 +1030	[thread overview]
Message-ID: <01a47fff-c21d-4309-a7a2-fa7a87f4e024@app.fastmail.com> (raw)
In-Reply-To: <CAMRc=Md9hpypoB_CYrGecp5ZkkmMJFWuZXo4LzbAkZdiv5oOag@mail.gmail.com>



On Tue, 6 Dec 2022, at 05:25, Bartosz Golaszewski wrote:
> On Mon, Dec 5, 2022 at 2:22 PM Andrew Jeffery <andrew@aj.id.au> wrote:
>>
>> Hello,
>>
>> Based on a recent poke [1] and in-between meetings I've put together a
>> WIP series that converts libgpiod's build from autotools to meson. As
>> far as I'm aware the meson build supports all the significant options to
>> enable or disable features exposed by the autotools build:
>>
>> * Tests
>> * Tools
>>   * Interactive gpioset
>> * Bindings
>>   * C++
>>   * Python
>>   * Rust
>> * Documentation
>>   * Manpages
>>   * Doxygen
>>
>> [1] https://lore.kernel.org/all/CAMRc=Mda8UnyH+_GxeX_4MyKd+DPN0BVH5K+J+VWnMJNC1vwTQ@mail.gmail.com/
>>
>> Meson has pretty good support for handling python and so the patch does
>> away with setup.py entirely.
>
> Eek! No, please do keep setup.py. Autotools too is capable of building
> python C extensions on its own and it's what we use in v1 but I want
> the python code to be built the standard python way. I actually plan
> to post libgpiod v2 on pypi and split out building python bindings
> into a separate bitbake recipe in meta-openembedded using the
> setuptools3 class.
>
> So let's keep setup.py and just call it from meson.

I've poked at this for a little while and it's not a great experience.
Meson's design pushes back against calling out in this way, and I don't
really have the motivation to carry on fighting it to make it do what
you request. Unless someone else has that motivation, I think there are
two options if meson is still desired:

1. Use the meson python support as posted in this series
2. Split out the python (and probably rust) bindings, keeping the
   dependency relationships pointing in one direction and using the
   language's own package management tooling.

Given there's nothing to do in the install phase for rust we don't have
as big of an issue there, but it is problematic for python.

Let me know which way you want to go, including if you want to abandon
meson :)

Andrew

  parent reply	other threads:[~2022-12-08  4:24 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-05 13:22 [libgpiod][WIP PATCH 0/2] Convert the build from autotools to meson Andrew Jeffery
2022-12-05 13:22 ` [libgpiod][WIP PATCH 1/2] Introduce meson as a build system Andrew Jeffery
2022-12-05 13:22 ` [libgpiod][WIP PATCH 2/2] Remove autotools in favour of meson Andrew Jeffery
2022-12-05 18:55 ` [libgpiod][WIP PATCH 0/2] Convert the build from autotools to meson Bartosz Golaszewski
2022-12-05 23:42   ` Andrew Jeffery
2022-12-06  0:06   ` Viresh Kumar
2022-12-06  0:26     ` Andrew Jeffery
2022-12-06  3:40       ` Viresh Kumar
2022-12-06  3:54         ` Kent Gibson
2022-12-06 12:15           ` Miguel Ojeda
2022-12-06 14:54   ` Andy Shevchenko
2022-12-06 22:04     ` Andrew Jeffery
2022-12-06 22:21       ` Andy Shevchenko
2022-12-08  4:23   ` Andrew Jeffery [this message]
2022-12-08  9:27     ` Bartosz Golaszewski
2022-12-08 11:09       ` Andrew Jeffery
2022-12-08 18:48         ` Bartosz Golaszewski
2022-12-08 21:51           ` Andrew Jeffery

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=01a47fff-c21d-4309-a7a2-fa7a87f4e024@app.fastmail.com \
    --to=andrew@aj.id.au \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=brgl@bgdev.pl \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=viresh.kumar@linaro.org \
    --cc=warthog618@gmail.com \
    /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;
as well as URLs for NNTP newsgroup(s).