* [Buildroot] [PATCH] libgpiod: bump version to v1.1
@ 2018-05-16 13:58 Bartosz Golaszewski
2018-05-16 21:48 ` Arnout Vandecappelle
0 siblings, 1 reply; 6+ messages in thread
From: Bartosz Golaszewski @ 2018-05-16 13:58 UTC (permalink / raw)
To: buildroot
This is a minor release the main feature of which are the
object-oriented bindings for C++ and Python3. Other than that there's
a couple bug-fixes and minor improvements all around.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
---
package/libgpiod/Config.in | 20 ++++++++++++++++++++
package/libgpiod/libgpiod.hash | 2 +-
package/libgpiod/libgpiod.mk | 20 ++++++++++++++++++--
3 files changed, 39 insertions(+), 3 deletions(-)
diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in
index 63a7cb6e78..c10f11cc15 100644
--- a/package/libgpiod/Config.in
+++ b/package/libgpiod/Config.in
@@ -14,6 +14,26 @@ config BR2_PACKAGE_LIBGPIOD_TOOLS
help
Include a set of command-line tools for managing GPIOs.
+config BR2_PACKAGE_LIBGPIODCXX
+ bool "install C++ bindings"
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
+ help
+ Build C++ bindings for libgpiod.
+
+comment "C++ bindings need a toolchain w/ C++, gcc >= 4.8"
+ depends on !BR2_INSTALL_LIBSTDCPP || \
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+
+config BR2_PACKAGE_LIBGPIOD_PYTHON
+ bool "install python bindings"
+ depends on BR2_PACKAGE_PYTHON3
+ help
+ Build Python3 bindings for libgpiod.
+
+comment "Python bindings need python3"
+ depends on !BR2_PACKAGE_PYTHON3
+
endif
comment "libgpiod needs kernel headers >= 4.8"
diff --git a/package/libgpiod/libgpiod.hash b/package/libgpiod/libgpiod.hash
index 9ed4b59ab9..1d217f6048 100644
--- a/package/libgpiod/libgpiod.hash
+++ b/package/libgpiod/libgpiod.hash
@@ -1,4 +1,4 @@
# From https://www.kernel.org/pub/software/libs/libgpiod/sha256sums.asc
-sha256 972924195367f5fb045c023d65340c4b7dfc8764499516be446553865208dedc libgpiod-1.0.1.tar.xz
+sha256 9758466468a7ef3f5e30c182c1303abef6241e665cda4d82a64328a7474838c1 libgpiod-1.1.tar.xz
# Hash for license file
sha256 ce64d5f7b49ea6d80fdb6d4cdee6839d1a94274f7493dc797c3b55b65ec8e9ed COPYING
diff --git a/package/libgpiod/libgpiod.mk b/package/libgpiod/libgpiod.mk
index 7f8fa4b7dd..3a829c11c8 100644
--- a/package/libgpiod/libgpiod.mk
+++ b/package/libgpiod/libgpiod.mk
@@ -4,13 +4,12 @@
#
################################################################################
-LIBGPIOD_VERSION = 1.0.1
+LIBGPIOD_VERSION = 1.1
LIBGPIOD_SOURCE = libgpiod-$(LIBGPIOD_VERSION).tar.xz
LIBGPIOD_SITE = https://www.kernel.org/pub/software/libs/libgpiod
LIBGPIOD_LICENSE = LGPL-2.1+
LIBGPIOD_LICENSE_FILES = COPYING
LIBGPIOD_INSTALL_STAGING = YES
-
LIBGPIOD_DEPENDENCIES = host-pkgconf
ifeq ($(BR2_PACKAGE_LIBGPIOD_TOOLS),y)
@@ -19,4 +18,21 @@ else
LIBGPIOD_CONF_OPTS += --disable-tools
endif
+ifeq ($(BR2_PACKAGE_LIBGPIODCXX),y)
+LIBGPIOD_CONF_OPTS += --enable-bindings-cxx
+else
+LIBGPIOD_CONF_OPTS += --disable-bindings-cxx
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGPIOD_PYTHON),y)
+LIBGPIOD_CONF_OPTS += --enable-bindings-python
+LIBGPIOD_DEPENDENCIES += python3 host-python3
+LIBGPIOD_CONF_ENV += \
+ PYTHON=$(HOST_DIR)/bin/python3 \
+ PYTHON_CPPFLAGS="`$(STAGING_DIR)/usr/bin/python3-config --includes`" \
+ PYTHON_LIBS="`$(STAGING_DIR)/usr/bin/python3-config --ldflags`"
+else
+LIBGPIOD_CONF_OPTS += --disable-bindings-python
+endif
+
$(eval $(autotools-package))
--
2.17.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] libgpiod: bump version to v1.1
2018-05-16 13:58 [Buildroot] [PATCH] libgpiod: bump version to v1.1 Bartosz Golaszewski
@ 2018-05-16 21:48 ` Arnout Vandecappelle
2018-05-17 7:00 ` Bartosz Golaszewski
0 siblings, 1 reply; 6+ messages in thread
From: Arnout Vandecappelle @ 2018-05-16 21:48 UTC (permalink / raw)
To: buildroot
On 16-05-18 15:58, Bartosz Golaszewski wrote:
> This is a minor release the main feature of which are the
> object-oriented bindings for C++ and Python3. Other than that there's
> a couple bug-fixes and minor improvements all around.
So for -next, I guess?
>
> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
> ---
> package/libgpiod/Config.in | 20 ++++++++++++++++++++
> package/libgpiod/libgpiod.hash | 2 +-
> package/libgpiod/libgpiod.mk | 20 ++++++++++++++++++--
> 3 files changed, 39 insertions(+), 3 deletions(-)
>
> diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in
> index 63a7cb6e78..c10f11cc15 100644
> --- a/package/libgpiod/Config.in
> +++ b/package/libgpiod/Config.in
> @@ -14,6 +14,26 @@ config BR2_PACKAGE_LIBGPIOD_TOOLS
> help
> Include a set of command-line tools for managing GPIOs.
>
> +config BR2_PACKAGE_LIBGPIODCXX
> + bool "install C++ bindings"
> + depends on BR2_INSTALL_LIBSTDCPP
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
Is there really a need to make these bindings optional? We try to avoid too
many Config.in options. So only if the bindings are relatively large on target
it's worthwhile to make them optional (more than, say 20% of libgpiod itself,
after stripping).
If the bindings don't make it much larger, you can just move the dependencies
to the BR2_PACKAGE_LIBGPIODCXX condition in the .mk file.
> + help
> + Build C++ bindings for libgpiod.
> +
> +comment "C++ bindings need a toolchain w/ C++, gcc >= 4.8"
> + depends on !BR2_INSTALL_LIBSTDCPP || \
> + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
> +
> +config BR2_PACKAGE_LIBGPIOD_PYTHON
> + bool "install python bindings"
> + depends on BR2_PACKAGE_PYTHON3
Same here of course.
Otherwise,
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Regards,
Arnout
> + help
> + Build Python3 bindings for libgpiod.
> +
> +comment "Python bindings need python3"
> + depends on !BR2_PACKAGE_PYTHON3
> +
> endif
[snip]
--
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
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] libgpiod: bump version to v1.1
2018-05-16 21:48 ` Arnout Vandecappelle
@ 2018-05-17 7:00 ` Bartosz Golaszewski
2018-05-17 7:20 ` Baruch Siach
0 siblings, 1 reply; 6+ messages in thread
From: Bartosz Golaszewski @ 2018-05-17 7:00 UTC (permalink / raw)
To: buildroot
2018-05-16 23:48 GMT+02:00 Arnout Vandecappelle <arnout@mind.be>:
>
>
> On 16-05-18 15:58, Bartosz Golaszewski wrote:
>> This is a minor release the main feature of which are the
>> object-oriented bindings for C++ and Python3. Other than that there's
>> a couple bug-fixes and minor improvements all around.
>
> So for -next, I guess?
>
>>
>> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
>> ---
>> package/libgpiod/Config.in | 20 ++++++++++++++++++++
>> package/libgpiod/libgpiod.hash | 2 +-
>> package/libgpiod/libgpiod.mk | 20 ++++++++++++++++++--
>> 3 files changed, 39 insertions(+), 3 deletions(-)
>>
>> diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in
>> index 63a7cb6e78..c10f11cc15 100644
>> --- a/package/libgpiod/Config.in
>> +++ b/package/libgpiod/Config.in
>> @@ -14,6 +14,26 @@ config BR2_PACKAGE_LIBGPIOD_TOOLS
>> help
>> Include a set of command-line tools for managing GPIOs.
>>
>> +config BR2_PACKAGE_LIBGPIODCXX
>> + bool "install C++ bindings"
>> + depends on BR2_INSTALL_LIBSTDCPP
>> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
>
> Is there really a need to make these bindings optional? We try to avoid too
> many Config.in options. So only if the bindings are relatively large on target
> it's worthwhile to make them optional (more than, say 20% of libgpiod itself,
> after stripping).
>
The basic library and tools only require a libc and recent kernel
headers. I don't want users of very simple systems to carry all those
dependencies for C++ and Python if they're not using it.
> If the bindings don't make it much larger, you can just move the dependencies
> to the BR2_PACKAGE_LIBGPIODCXX condition in the .mk file.
>
>
>> + help
>> + Build C++ bindings for libgpiod.
>> +
>> +comment "C++ bindings need a toolchain w/ C++, gcc >= 4.8"
>> + depends on !BR2_INSTALL_LIBSTDCPP || \
>> + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
>> +
>> +config BR2_PACKAGE_LIBGPIOD_PYTHON
>> + bool "install python bindings"
>> + depends on BR2_PACKAGE_PYTHON3
>
> Same here of course.
>
> Otherwise,
>
> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
>
> Regards,
> Arnout
>
>> + help
>> + Build Python3 bindings for libgpiod.
>> +
>> +comment "Python bindings need python3"
>> + depends on !BR2_PACKAGE_PYTHON3
>> +
>> endif
>
> [snip]
>
> --
> Arnout Vandecappelle arnout at mind be
Thanks,
Bart
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] libgpiod: bump version to v1.1
2018-05-17 7:00 ` Bartosz Golaszewski
@ 2018-05-17 7:20 ` Baruch Siach
2018-05-17 8:10 ` Bartosz Golaszewski
0 siblings, 1 reply; 6+ messages in thread
From: Baruch Siach @ 2018-05-17 7:20 UTC (permalink / raw)
To: buildroot
Hi Bartosz,
On Thu, May 17, 2018 at 09:00:38AM +0200, Bartosz Golaszewski wrote:
> 2018-05-16 23:48 GMT+02:00 Arnout Vandecappelle <arnout@mind.be>:
> > On 16-05-18 15:58, Bartosz Golaszewski wrote:
> >> This is a minor release the main feature of which are the
> >> object-oriented bindings for C++ and Python3. Other than that there's
> >> a couple bug-fixes and minor improvements all around.
> >
> > So for -next, I guess?
> >
> >> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
> >> ---
> >> package/libgpiod/Config.in | 20 ++++++++++++++++++++
> >> package/libgpiod/libgpiod.hash | 2 +-
> >> package/libgpiod/libgpiod.mk | 20 ++++++++++++++++++--
> >> 3 files changed, 39 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in
> >> index 63a7cb6e78..c10f11cc15 100644
> >> --- a/package/libgpiod/Config.in
> >> +++ b/package/libgpiod/Config.in
> >> @@ -14,6 +14,26 @@ config BR2_PACKAGE_LIBGPIOD_TOOLS
> >> help
> >> Include a set of command-line tools for managing GPIOs.
> >>
> >> +config BR2_PACKAGE_LIBGPIODCXX
> >> + bool "install C++ bindings"
> >> + depends on BR2_INSTALL_LIBSTDCPP
> >> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
> >
> > Is there really a need to make these bindings optional? We try to avoid too
> > many Config.in options. So only if the bindings are relatively large on target
> > it's worthwhile to make them optional (more than, say 20% of libgpiod itself,
> > after stripping).
>
> The basic library and tools only require a libc and recent kernel
> headers. I don't want users of very simple systems to carry all those
> dependencies for C++ and Python if they're not using it.
You don't need to. You can make BR2_INSTALL_LIBSTDCPP an optional dependency.
If it is defined, install the C++ binding. Same goes for Python. That is what
Arnout suggests.
baruch
--
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] libgpiod: bump version to v1.1
2018-05-17 7:20 ` Baruch Siach
@ 2018-05-17 8:10 ` Bartosz Golaszewski
2018-05-17 8:13 ` Thomas Petazzoni
0 siblings, 1 reply; 6+ messages in thread
From: Bartosz Golaszewski @ 2018-05-17 8:10 UTC (permalink / raw)
To: buildroot
2018-05-17 9:20 GMT+02:00 Baruch Siach <baruch@tkos.co.il>:
> Hi Bartosz,
>
> On Thu, May 17, 2018 at 09:00:38AM +0200, Bartosz Golaszewski wrote:
>> 2018-05-16 23:48 GMT+02:00 Arnout Vandecappelle <arnout@mind.be>:
>> > On 16-05-18 15:58, Bartosz Golaszewski wrote:
>> >> This is a minor release the main feature of which are the
>> >> object-oriented bindings for C++ and Python3. Other than that there's
>> >> a couple bug-fixes and minor improvements all around.
>> >
>> > So for -next, I guess?
>> >
>> >> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
>> >> ---
>> >> package/libgpiod/Config.in | 20 ++++++++++++++++++++
>> >> package/libgpiod/libgpiod.hash | 2 +-
>> >> package/libgpiod/libgpiod.mk | 20 ++++++++++++++++++--
>> >> 3 files changed, 39 insertions(+), 3 deletions(-)
>> >>
>> >> diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in
>> >> index 63a7cb6e78..c10f11cc15 100644
>> >> --- a/package/libgpiod/Config.in
>> >> +++ b/package/libgpiod/Config.in
>> >> @@ -14,6 +14,26 @@ config BR2_PACKAGE_LIBGPIOD_TOOLS
>> >> help
>> >> Include a set of command-line tools for managing GPIOs.
>> >>
>> >> +config BR2_PACKAGE_LIBGPIODCXX
>> >> + bool "install C++ bindings"
>> >> + depends on BR2_INSTALL_LIBSTDCPP
>> >> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
>> >
>> > Is there really a need to make these bindings optional? We try to avoid too
>> > many Config.in options. So only if the bindings are relatively large on target
>> > it's worthwhile to make them optional (more than, say 20% of libgpiod itself,
>> > after stripping).
>>
>> The basic library and tools only require a libc and recent kernel
>> headers. I don't want users of very simple systems to carry all those
>> dependencies for C++ and Python if they're not using it.
>
> You don't need to. You can make BR2_INSTALL_LIBSTDCPP an optional dependency.
> If it is defined, install the C++ binding. Same goes for Python. That is what
> Arnout suggests.
>
I'm afraid I don't understand. Could you maybe point me to some example?
Bart
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] libgpiod: bump version to v1.1
2018-05-17 8:10 ` Bartosz Golaszewski
@ 2018-05-17 8:13 ` Thomas Petazzoni
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2018-05-17 8:13 UTC (permalink / raw)
To: buildroot
Hello,
On Thu, 17 May 2018 10:10:54 +0200, Bartosz Golaszewski wrote:
> > You don't need to. You can make BR2_INSTALL_LIBSTDCPP an optional dependency.
> > If it is defined, install the C++ binding. Same goes for Python. That is what
> > Arnout suggests.
> >
>
> I'm afraid I don't understand. Could you maybe point me to some example?
ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
... enable the build/installation of C++ bindings
endif
ifeq ($(BR2_PACKAGE_PYTHON),y)
... enable the build/istallation of Python bindings
endif
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-05-17 8:13 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-16 13:58 [Buildroot] [PATCH] libgpiod: bump version to v1.1 Bartosz Golaszewski
2018-05-16 21:48 ` Arnout Vandecappelle
2018-05-17 7:00 ` Bartosz Golaszewski
2018-05-17 7:20 ` Baruch Siach
2018-05-17 8:10 ` Bartosz Golaszewski
2018-05-17 8:13 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox