diff mbox series

[1/1] domoticz: depends on NPTL

Message ID 20180120112824.12236-1-fontaine.fabrice@gmail.com
State Superseded
Headers show
Series [1/1] domoticz: depends on NPTL | expand

Commit Message

Fabrice Fontaine Jan. 20, 2018, 11:28 a.m. UTC
boost 1.66 uses pthread_condattr_setclock in
boost/asio/detail/impl/posix_event.ipp so add a dependency to
BR2_TOOLCHAIN_HAS_THREADS_NPTL

Fixes:
 - http://autobuild.buildroot.net/results/197baa15cbf7f4fc7b3ccc602515af3f375ed68f

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/domoticz/Config.in | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Comments

Peter Korsgaard Jan. 29, 2018, 8:09 p.m. UTC | #1
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

Hi,

 > boost 1.66 uses pthread_condattr_setclock in
 > boost/asio/detail/impl/posix_event.ipp so add a dependency to
 > BR2_TOOLCHAIN_HAS_THREADS_NPTL

Shouldn't boost then depend on BR2_TOOLCHAIN_HAS_THREADS_NPTL (and
domoticz enherit it), or is this code only used in special cases?
Thomas Petazzoni Jan. 29, 2018, 9:25 p.m. UTC | #2
Hello,

On Mon, 29 Jan 2018 21:09:03 +0100, Peter Korsgaard wrote:

>  > boost 1.66 uses pthread_condattr_setclock in
>  > boost/asio/detail/impl/posix_event.ipp so add a dependency to
>  > BR2_TOOLCHAIN_HAS_THREADS_NPTL  
> 
> Shouldn't boost then depend on BR2_TOOLCHAIN_HAS_THREADS_NPTL (and
> domoticz enherit it), or is this code only used in special cases?

Well, Boost is mostly a header-only library, in particular the asio
stuff I believe. While we have sub-options for the parts of Boost that
are not purely headers, we don't have any sub-options for the parts of
Boost that are just headers.

So, the options are either to add sub-options to Boost, or to make
Boost as a whole only available on NPTL toolchains. The latter is a bit
annoying as it would mean adding this dependency to all Boost reverse
dependencies, even those not using asio.

So I think Fabrice's patch is the best solution we can have today. I'm
not saying it's perfect, but it's good enough IMO.

Best regards,

Thomas
Peter Korsgaard Jan. 29, 2018, 9:50 p.m. UTC | #3
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 > Hello,
 > On Mon, 29 Jan 2018 21:09:03 +0100, Peter Korsgaard wrote:

 >> > boost 1.66 uses pthread_condattr_setclock in
 >> > boost/asio/detail/impl/posix_event.ipp so add a dependency to
 >> > BR2_TOOLCHAIN_HAS_THREADS_NPTL  
 >> 
 >> Shouldn't boost then depend on BR2_TOOLCHAIN_HAS_THREADS_NPTL (and
 >> domoticz enherit it), or is this code only used in special cases?

 > Well, Boost is mostly a header-only library, in particular the asio
 > stuff I believe. While we have sub-options for the parts of Boost that
 > are not purely headers, we don't have any sub-options for the parts of
 > Boost that are just headers.

 > So, the options are either to add sub-options to Boost, or to make
 > Boost as a whole only available on NPTL toolchains. The latter is a bit
 > annoying as it would mean adding this dependency to all Boost reverse
 > dependencies, even those not using asio.

 > So I think Fabrice's patch is the best solution we can have today. I'm
 > not saying it's perfect, but it's good enough IMO.

Ok, fine by me - But please mention this in the commit message.
diff mbox series

Patch

diff --git a/package/domoticz/Config.in b/package/domoticz/Config.in
index 34bf2521a2..530027f273 100644
--- a/package/domoticz/Config.in
+++ b/package/domoticz/Config.in
@@ -3,7 +3,8 @@  config BR2_PACKAGE_DOMOTICZ
 	depends on BR2_USE_MMU # mosquitto
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mosquitto
 	depends on !BR2_STATIC_LIBS # mosquitto
-	depends on BR2_TOOLCHAIN_HAS_THREADS
+	# pthread_condattr_setclock
+	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_USE_WCHAR
 	depends on BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3
@@ -26,10 +27,11 @@  config BR2_PACKAGE_DOMOTICZ
 
 	  http://domoticz.com
 
-comment "domoticz needs lua >= 5.2 and a toolchain w/ C++, threads, wchar, dynamic library"
+comment "domoticz needs lua >= 5.2 and a toolchain w/ C++, NPTL, wchar, dynamic library"
 	depends on BR2_USE_MMU
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
-	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
+	depends on !BR2_INSTALL_LIBSTDCPP || \
+		!BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
 		!BR2_USE_WCHAR || BR2_STATIC_LIBS || \
 		!(BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3)