linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH libgpiod RFC 0/3] bindings: rust: allow packaging of libgpiod-sys
@ 2023-05-23 11:25 Erik Schilling
  2023-05-23 11:25 ` [PATCH libgpiod RFC 1/3] bindings: rust: drop legacy extern crate syntax Erik Schilling
                   ` (4 more replies)
  0 siblings, 5 replies; 18+ messages in thread
From: Erik Schilling @ 2023-05-23 11:25 UTC (permalink / raw)
  To: Linux-GPIO
  Cc: Bartosz Golaszewski, Viresh Kumar, Manos Pitsidianakis,
	Alex Bennée, Erik Schilling

As of now, the Rust bindings are only consumable as git dependencies
(and even then come with some restrictions when wanting to control
the build and linkage behaviour).

This series does some (hopefully) cleanup and then proposes a change
in how the Rust bindings are built and linked.

Since the changes may require people hacking on the bindings to set some
additional environment variables (at least if they want to avoid running
make install), I am sending this as an RFC in order
to hear opinions.

For gpiosim-sys the situation is slightly more complex. Right now,
libgpiosim installs without a pkg-config. If it is desireable to add
one, that could be done and the same mechanism could be used. Otherwise,
if packaging that lib is desirable (it looks like it?), we could either
still query for libgpiod (and hope that the linker and include paths are
matching) or need some other way to acquire the linker and include paths
(and flags).

So... The open questions:
- Is this OK at all? Are people depending on this building against
  relative paths?
- What to do with gpiosim-sys (see above)?
- Is there interest into getting this published on crates.io after
  packaging is fixed?

Signed-off-by: Erik Schilling <erik.schilling@linaro.org>
---
Erik Schilling (3):
      bindings: rust: drop legacy extern crate syntax
      bindings: rust: remove unneeded cc dependency
      bindings: rust: build against pkg-config info

 README                                | 13 ++++++++++-
 bindings/rust/libgpiod-sys/Cargo.toml |  5 ++++-
 bindings/rust/libgpiod-sys/build.rs   | 42 ++++++++++++++++++++++-------------
 3 files changed, 42 insertions(+), 18 deletions(-)
---
base-commit: 0a51d62f060dbc1b036dfd45e52d4d90f0ce3eeb
change-id: 20230522-crates-io-773a0b6b423d

Best regards,
-- 
Erik Schilling <erik.schilling@linaro.org>


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-05-26  9:45 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-23 11:25 [PATCH libgpiod RFC 0/3] bindings: rust: allow packaging of libgpiod-sys Erik Schilling
2023-05-23 11:25 ` [PATCH libgpiod RFC 1/3] bindings: rust: drop legacy extern crate syntax Erik Schilling
2023-05-24  4:36   ` Viresh Kumar
2023-05-23 11:25 ` [PATCH libgpiod RFC 2/3] bindings: rust: remove unneeded cc dependency Erik Schilling
2023-05-24  4:36   ` Viresh Kumar
2023-05-23 11:25 ` [PATCH libgpiod RFC 3/3] bindings: rust: build against pkg-config info Erik Schilling
2023-05-24  5:01   ` Erik Schilling
2023-05-24  6:03 ` [PATCH libgpiod RFC 0/3] bindings: rust: allow packaging of libgpiod-sys Viresh Kumar
2023-05-24  8:09   ` Erik Schilling
2023-05-24  8:14     ` Viresh Kumar
2023-05-24 10:53       ` Erik Schilling
2023-05-26  8:30         ` Erik Schilling
2023-05-26  8:36           ` Bartosz Golaszewski
2023-05-26  8:59             ` Erik Schilling
2023-05-26  9:31               ` Viresh Kumar
2023-05-26  9:44                 ` Erik Schilling
2023-05-24  9:17 ` Bartosz Golaszewski
2023-05-26  9:45   ` Erik Schilling

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).