All of lore.kernel.org
 help / color / mirror / Atom feed
From: Baruch Siach <baruch@tkos.co.il>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] zeromq packages: added dynamic library check
Date: Wed, 11 Apr 2018 21:38:00 +0300	[thread overview]
Message-ID: <20180411183800.fgtsbp2ypgsb5ajk@tarshish> (raw)
In-Reply-To: <20180411155544.18395-1-asafka7@gmail.com>

Hi Adaf,

On Wed, Apr 11, 2018 at 06:55:44PM +0300, Asaf Kahlon wrote:
> The zeromq package now needs dynamic library support.
> Therefore the check was added to it, and to it's bindings.

Please add a link an autobuilder build that this patch fixes.

You also need to propagate this added dependency to reverse dependencies 
recursively. So, for example, filemq also needs to depend on !static because 
it selects czmq.

But I think there is a way to avoid all that. The code that needs dladdr() in 
src/err.cpp depends on libunwind. The configure.ac section that checks for 
libunwind checks also dladdr(). So this configure failure is unnecessary. Just 
add libdld to the list of libraries, and remove the configure failing check.

Can you suggest upstream something along this line?

Thanks,
baruch

> Signed-off-by: Asaf Kahlon <asafka7@gmail.com>
> ---
>  DEVELOPERS                     |  1 +
>  package/cppzmq/Config.in       |  6 ++++--
>  package/czmq/Config.in         |  6 ++++--
>  package/php-zmq/Config.in      | 10 ++++++----
>  package/python-pyzmq/Config.in |  6 ++++--
>  package/zeromq/Config.in       | 10 ++++------
>  package/zmqpp/Config.in        |  5 +++--
>  7 files changed, 26 insertions(+), 18 deletions(-)
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 00cbaeff37..bf7716316c 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -191,6 +191,7 @@ F:	package/stress/
>  N:	Asaf Kahlon <asafka7@gmail.com>
>  F:	package/python-jsonmodels/
>  F:	package/python-yieldfrom/
> +F:	package/zeromq
>  
>  N:	Ash Charles <ash.charles@savoirfairelinux.com>
>  F:	package/pru-software-support/
> diff --git a/package/cppzmq/Config.in b/package/cppzmq/Config.in
> index c984c15c96..33fe7b6bca 100644
> --- a/package/cppzmq/Config.in
> +++ b/package/cppzmq/Config.in
> @@ -2,11 +2,13 @@ config BR2_PACKAGE_CPPZMQ
>  	bool "cppzmq"
>  	depends on BR2_INSTALL_LIBSTDCPP
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
> +	depends on !BR2_STATIC_LIBS # zeromq
>  	select BR2_PACKAGE_ZEROMQ
>  	help
>  	  C++ binding for zeromq (ZeroMQ, 0MQ, zmq).
>  
>  	  http://github.com/zeromq/cppzmq
>  
> -comment "cppzmq needs a toolchain w/ C++, threads"
> -	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)
> +comment "cppzmq needs a toolchain w/ dynamic library, C++, threads"
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> +		BR2_STATIC_LIBS
> diff --git a/package/czmq/Config.in b/package/czmq/Config.in
> index 71389fce51..3cfe61ce42 100644
> --- a/package/czmq/Config.in
> +++ b/package/czmq/Config.in
> @@ -3,12 +3,14 @@ config BR2_PACKAGE_CZMQ
>  	depends on BR2_USE_MMU # fork()
>  	depends on BR2_INSTALL_LIBSTDCPP # zeromq
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
> +	depends on !BR2_STATIC_LIBS # zeromq
>  	select BR2_PACKAGE_ZEROMQ
>  	help
>  	  High-level C Binding for 0MQ
>  
>  	  http://czmq.zeromq.org/
>  
> -comment "czmq needs a toolchain w/ C++, threads"
> +comment "czmq needs a toolchain w/ dynamic library, C++, threads"
>  	depends on BR2_USE_MMU
> -	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> +		BR2_STATIC_LIBS
> diff --git a/package/php-zmq/Config.in b/package/php-zmq/Config.in
> index 058f93d9a8..3ba0096e43 100644
> --- a/package/php-zmq/Config.in
> +++ b/package/php-zmq/Config.in
> @@ -1,11 +1,13 @@
> -comment "php-zmq needs a toolchain w/ C++, threads"
> -	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)
> +comment "php-zmq needs a toolchain w/ dynamic library C++, threads"
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> +		BR2_STATIC_LIBS
>  
>  config BR2_PACKAGE_PHP_ZMQ
>  	bool "php-zmq"
>  	depends on BR2_PACKAGE_PHP
> -	depends on BR2_INSTALL_LIBSTDCPP
> -	depends on BR2_TOOLCHAIN_HAS_THREADS
> +	depends on BR2_INSTALL_LIBSTDCPP # zeromq
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
> +	depends on !BR2_STATIC_LIBS # zeromq
>  	select BR2_PACKAGE_ZEROMQ
>  	help
>  	  ZeroMQ messaging bindings for PHP
> diff --git a/package/python-pyzmq/Config.in b/package/python-pyzmq/Config.in
> index 8f33a635c8..306fa02bcb 100644
> --- a/package/python-pyzmq/Config.in
> +++ b/package/python-pyzmq/Config.in
> @@ -2,12 +2,14 @@ config BR2_PACKAGE_PYTHON_PYZMQ
>  	bool "python-pyzmq"
>  	depends on BR2_INSTALL_LIBSTDCPP # zeromq
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
> +	depends on !BR2_STATIC_LIBS # zeromq
>  	select BR2_PACKAGE_ZEROMQ
>  	help
>  	  This package contains the python language binding for zeromq.
>  
>  	  http://zeromq.org/bindings:python
>  
> -comment "python-pyzmq needs a toolchain w/ C++, threads"
> +comment "python-pyzmq needs a toolchain w/ dynamic library C++, threads"
>  	depends on BR2_PACKAGE_PYTHON
> -	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> +		BR2_STATIC_LIBS
> diff --git a/package/zeromq/Config.in b/package/zeromq/Config.in
> index 69be9f002c..038ff61912 100644
> --- a/package/zeromq/Config.in
> +++ b/package/zeromq/Config.in
> @@ -1,10 +1,12 @@
> -comment "zeromq needs a toolchain w/ C++, threads"
> -	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)
> +comment "zeromq needs a toolchain w/ dynamic library, C++, threads"
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> +		BR2_STATIC_LIBS
>  
>  config BR2_PACKAGE_ZEROMQ
>  	bool "zeromq"
>  	depends on BR2_INSTALL_LIBSTDCPP
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
> +	depends on !BR2_STATIC_LIBS
>  	select BR2_PACKAGE_UTIL_LINUX
>  	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
>  	help
> @@ -25,12 +27,8 @@ config BR2_PACKAGE_ZEROMQ
>  
>  if BR2_PACKAGE_ZEROMQ
>  
> -comment "norm support needs a toolchain w/ dynamic library"
> -	depends on BR2_STATIC_LIBS
> -
>  config BR2_PACKAGE_ZEROMQ_NORM
>  	bool "NORM support"
> -	depends on !BR2_STATIC_LIBS
>  	select BR2_PACKAGE_NORM
>  	help
>  	  Add support for NACK-Oriented Reliable Multicast (RFC 5740)
> diff --git a/package/zmqpp/Config.in b/package/zmqpp/Config.in
> index 8dad80e451..3bb427cc5b 100644
> --- a/package/zmqpp/Config.in
> +++ b/package/zmqpp/Config.in
> @@ -4,6 +4,7 @@ config BR2_PACKAGE_ZMQPP
>  	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
>  	depends on BR2_INSTALL_LIBSTDCPP
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq
> +	depends on !BR2_STATIC_LIBS # zeromq
>  	select BR2_PACKAGE_ZEROMQ
>  	help
>  	  C++ binding for zeromq (ZeroMQ, 0MQ, zmq).
> @@ -13,9 +14,9 @@ config BR2_PACKAGE_ZMQPP
>  
>  	  http://github.com/benjamg/zmqpp
>  
> -comment "zmqpp needs a toolchain w/ C++, threads, gcc >= 4.7"
> +comment "zmqpp needs a toolchain w/ dynamic library, C++, threads"
>  	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> -		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
> +		BR2_STATIC_LIBS
>  
>  if BR2_PACKAGE_ZMQPP

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

  reply	other threads:[~2018-04-11 18:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-11 15:55 [Buildroot] [PATCH 1/1] zeromq packages: added dynamic library check Asaf Kahlon
2018-04-11 18:38 ` Baruch Siach [this message]
2018-04-11 19:35   ` Asaf Kahlon
2018-04-12  5:44     ` Baruch Siach

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=20180411183800.fgtsbp2ypgsb5ajk@tarshish \
    --to=baruch@tkos.co.il \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.