From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] socket.AF_BLUETOOTH in python3 and circular dependencies
Date: Sat, 1 Sep 2018 09:05:07 +0200 [thread overview]
Message-ID: <20180901070507.GB2658@scaer> (raw)
In-Reply-To: <20180901001001.60b1762c@windsurf>
Thomas, Grzegorz, All,
On 2018-09-01 00:10 +0200, Thomas Petazzoni spake thusly:
> On Thu, 30 Aug 2018 21:21:23 +0200, Grzegorz Blach wrote:
> > But unfortunately this patch makes a circular dependencies:
> > $ make python3-graph-depends
> > Recursion detected for : bluez5_utils
> > which is a dependency of: python3
> > which is a dependency of: util-linux
> > which is a dependency of: libglib2
> > which is a dependency of: bluez5_utils
> Arghh, this is annoying :-/
> I don't see a good solution here. Possible options that I see at this
> point:
>
> (1) Change Python in Modules/socketmodule.c to not require
> bluetooth.h. It doesn't seem to link with any Bluetooth library,
> only to need bluetooth.h, so perhaps just like they do for
> FreeBSD/NetBSD, we could add the necessary definitions directly in
> socketmodule.c to avoid the bluetooth.h dependency ?
>
> (2) Create a python-util-linux package that would be responsible for
> building the util-linux Python bindings. This would remove Python
> from being a dependency of util-linux, and break the circular
> dependency.
>
> However, it is not clear that it will be easy to tell
> python-util-linux to *only* build the Python bindings and use the
> existing libraries built by the util-linux package, rather than
> rebuilding them again.
>
> (3) Add an explicit Config.in option for util-linux Python support,
> and make it conflict with Bluetooth support in Python.
(4) Create libutil-linux that just install the required libs, like
libmount needed by libglib2, thus breaking the loop. I think this
might be the simplest solution.
(5) Create libbluez5_utils, which only installs the development files,
so that python{,3} can depend on it. This would work, only if the
libbluetooth.so is not itself linked to libglib2 (but only the
bluetooth utils are). On my Ubuntu 17.10, it is not.
> For the record, OpenEmbedded doesn't support Bluetooth in Python socket
> module, they pass:
> ac_cv_header_bluetooth_bluetooth_h=no ac_cv_header_bluetooth_h=no
> to the Python configure script.
Maybe we can do better? ;-)
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
prev parent reply other threads:[~2018-09-01 7:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-30 19:21 [Buildroot] socket.AF_BLUETOOTH in python3 and circular dependencies Grzegorz Blach
2018-08-31 22:10 ` Thomas Petazzoni
2018-09-01 7:05 ` Yann E. MORIN [this message]
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=20180901070507.GB2658@scaer \
--to=yann.morin.1998@free.fr \
--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