mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Alexander Dahl <ada@thorsis.com>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH v2] libzmq: Add some conf env variables not automatically detected
Date: Fri,  2 Sep 2022 10:04:11 +0200	[thread overview]
Message-ID: <20220902080411.958-1-ada@thorsis.com> (raw)

Follow up to the discussion on the last version bump.
zmq does not (try to) detect these features when cross compiling,
so we must assist.
Output of prepare stage contains this now:

    checking whether EFD_CLOEXEC is supported... (cached) yes
    …
    checking whether SOCK_CLOEXEC is supported... (cached) yes
    checking whether O_CLOEXEC is supported... (cached) yes
    checking whether SO_BINDTODEVICE is supported... (cached) yes
    checking whether SO_KEEPALIVE is supported... (cached) yes
    checking whether TCP_KEEPCNT is supported... (cached) yes
    checking whether TCP_KEEPIDLE is supported... (cached) yes
    checking whether TCP_KEEPINTVL is supported... (cached) yes
    checking whether TCP_KEEPALIVE is supported... not during cross-compile
    checking whether SO_PRIORITY is supported... (cached) yes
    checking whether getrandom is supported... (cached) yes

Link: https://lore.ptxdist.org/ptxdist/20220708151537.GK20240@pengutronix.de/T/#m9b6e02442a30b09d25fe98258051ebd34ee4f94b
---

Notes:
    v2:
      - also enable getrandom(2)
      - reorganize comments to reflect glibc follows kernel,
        so years are not swapped

 rules/libzmq.make | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/rules/libzmq.make b/rules/libzmq.make
index d221ef6ac..94a5f84d8 100644
--- a/rules/libzmq.make
+++ b/rules/libzmq.make
@@ -34,6 +34,30 @@ LIBZMQ_CONF_ENV		:= \
 	$(CROSS_ENV) \
 	ac_cv_lib_sodium_sodium_init=no
 
+# Assume these are always available:
+# - O_CLOEXEC		(2007, kernel 2.6.23, glibc 2.7)
+# - EFD_CLOEXEC		(2008, kernel 2.6.27, glibc 2.9)
+# - SOCK_CLOEXEC	(2008, kernel 2.6.27, glibc 2.9)
+# - SO_BINDTODEVICE	(2009, kernel 2.6.31)
+# - SO_KEEPALIVE	(2009, kernel 2.6.31, glibc 1.x)
+# - SO_PRIORITY		(2009, kernel 2.6.31)
+# - TCP_KEEPCNT		(pre 2005/2013, pre kernel 2.6.12, glibc 2.18)
+# - TCP_KEEPIDLE	(pre 2005/2013, pre kernel 2.6.12, glibc 2.18)
+# - TCP_KEEPINTVL	(pre 2005/2013, pre kernel 2.6.12, glibc 2.18)
+# - getrandom		(2014/2017, kernel 3.17, glibc 2.25)
+# Note: TCP_KEEPALIVE is not available in glibc/kernel.
+LIBZMQ_CONF_ENV		+= \
+	libzmq_cv_o_cloexec=yes \
+	libzmq_cv_efd_cloexec=yes \
+	libzmq_cv_sock_cloexec=yes \
+	libzmq_cv_so_bindtodevice=yes \
+	libzmq_cv_so_keepalive=yes \
+	libzmq_cv_so_priority=yes \
+	libzmq_cv_tcp_keepcnt=yes \
+	libzmq_cv_tcp_keepidle=yes \
+	libzmq_cv_tcp_keepintvl=yes \
+	libzmq_cv_getrandom=yes
+
 #
 # autoconf
 #

base-commit: 20275946c697076ca6f696276117daf08ca6f4d1
-- 
2.30.2




             reply	other threads:[~2022-09-02  8:04 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-02  8:04 Alexander Dahl [this message]
2022-09-02  9:49 ` Michael Olbrich
2022-09-02 10:21   ` [ptxdist] [PATCH v3] " Alexander Dahl
2022-09-16  7:12     ` Alexander Dahl
2022-09-19 14:06       ` Michael Olbrich
2022-09-19 14:05     ` [ptxdist] [APPLIED] " Michael Olbrich

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=20220902080411.958-1-ada@thorsis.com \
    --to=ada@thorsis.com \
    --cc=ptxdist@pengutronix.de \
    /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