Github messages for voidlinux
 help / color / mirror / Atom feed
From: hazen2215 <hazen2215@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] pdsh: fix build on musl
Date: Mon, 26 Dec 2022 16:12:06 +0100	[thread overview]
Message-ID: <20221226151206.Bmg9a3LR4suoNANFg8ULkOZN5FdKjV-0W3XkzUPv2LI@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-41299@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1083 bytes --]

There is an updated pull request by hazen2215 against master on the void-packages repository

https://github.com/hazen2215/void-packages pdsh
https://github.com/void-linux/void-packages/pull/41299

pdsh: fix build on musl
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-musl)


A patch file from https://github.com/void-linux/void-packages/pull/41299.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-pdsh-41299.patch --]
[-- Type: text/x-diff, Size: 3588 bytes --]

From 333061b50c97195cd85a66d68826f5a8cc3fe922 Mon Sep 17 00:00:00 2001
From: hazen2215 <haz@disroot.org>
Date: Mon, 19 Dec 2022 00:10:28 +0900
Subject: [PATCH] pdsh: fix build on musl

---
 srcpkgs/pdsh/patches/without-rresvport.patch | 95 ++++++++++++++++++++
 srcpkgs/pdsh/template                        |  4 +-
 2 files changed, 97 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/pdsh/patches/without-rresvport.patch

diff --git a/srcpkgs/pdsh/patches/without-rresvport.patch b/srcpkgs/pdsh/patches/without-rresvport.patch
new file mode 100644
index 000000000000..0a5e0d91d796
--- /dev/null
+++ b/srcpkgs/pdsh/patches/without-rresvport.patch
@@ -0,0 +1,95 @@
+From 48c728dfefa3b9aff01f598ff9d3f909001b8e81 Mon Sep 17 00:00:00 2001
+From: Mark Grondona <grondo@eris.llnl.gov>
+Date: Thu, 10 Mar 2016 16:01:18 -0800
+Subject: [PATCH] privsep: do nothing if !HAVE_RRESVPORT
+
+If we don't have rresvport() do not enable privsep during
+privsep_init() (it probably isn't used anyway). Also be sure
+to undefine usage of rresvport and rresvport_af since these
+symbols won't be found at compile or runtime.
+
+Fixes #74
+---
+ src/pdsh/privsep.c | 23 ++++++++++++++++++++++-
+ 1 file changed, 22 insertions(+), 1 deletion(-)
+
+diff --git a/src/pdsh/privsep.c b/src/pdsh/privsep.c
+index 7e4134f2..2297b175 100644
+--- a/src/pdsh/privsep.c
++++ b/src/pdsh/privsep.c
+@@ -123,6 +123,10 @@ static int send_rresvport (int pipefd, int fd, int lport)
+ 
+ 	cmsg = (struct cmsghdr *) &buf;
+ #endif
++#if !HAVE_RRESVPORT
++	errno = ENOSYS;
++	return (-1);
++#endif
+ 
+ 	memset (&msg, 0, sizeof (msg));
+ 
+@@ -162,6 +166,7 @@ static int send_rresvport (int pipefd, int fd, int lport)
+ 	return (0);
+ }
+ 
++#if HAVE_RRESVPORT
+ static int recv_rresvport (int pipefd, int *lptr)
+ {
+ 	int            fd = -1;
+@@ -203,19 +208,23 @@ static int recv_rresvport (int pipefd, int *lptr)
+ 
+ 	return (fd);
+ }
++#endif /* HAVE_RRESVPORT */
+ 
+ 
+ static int p_rresvport_af (int *port, int family)
+ {
+ #if HAVE_RRESVPORT_AF
+ 	return rresvport_af (port, family);
+-#else
++#elif HAVE_RRESVPORT
+ 	/*  Family must be AF_INET
+ 	 */
+ 	if (family != AF_INET)
+ 		err ("%p: rresvport called with family != AF_INET!\n");
+ 	/* ignore family != AF_INET */
+ 	return rresvport (port);
++#else
++	errno = ENOSYS;
++	return (-1);
+ #endif
+ }
+ 
+@@ -274,6 +283,9 @@ static int create_privileged_child (void)
+ 
+ int privsep_init (void)
+ {
++#if !HAVE_RRESVPORT
++	return (0);
++#endif
+ 	if (geteuid() == getuid())
+ 		return 0;
+ 
+@@ -285,6 +297,9 @@ int privsep_init (void)
+ 
+ int privsep_fini (void)
+ {
++#if !HAVE_RRESVPORT
++	return (0);
++#endif
+ 	int status;
+ 	if (client_fd < 0 || cpid < 0)
+ 		return (0);
+@@ -334,5 +349,11 @@ int privsep_rresvport_af (int *lport, int family)
+ 
+ int privsep_rresvport (int *lport)
+ {
++#if HAVE_RRESVPORT
+ 	return privsep_rresvport_af (lport, AF_INET);
++#else
++	errno = ENOSYS;
++	return -1;
++#endif /* HAVE_RRESVPORT */
++	
+ }
diff --git a/srcpkgs/pdsh/template b/srcpkgs/pdsh/template
index 422b6489065d..cd2dc54745f0 100644
--- a/srcpkgs/pdsh/template
+++ b/srcpkgs/pdsh/template
@@ -1,8 +1,7 @@
 # Template file for 'pdsh'
 pkgname=pdsh
 version=2.34
-revision=1
-archs="~*-musl"
+revision=2
 build_style=gnu-configure
 configure_args="
  --disable-static-modules
@@ -19,6 +18,7 @@ makedepends="
  $(vopt_if mrsh munge-devel)
  $(vopt_if readline readline-devel)
 "
+checkdepends="which"
 short_desc="High performance, parallel remote shell utility"
 maintainer="Kyle Nusbaum <knusbaum+void@sdf.org>"
 license="GPL-2.0-or-later"

  reply	other threads:[~2022-12-26 15:12 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-26 14:48 [PR PATCH] " hazen2215
2022-12-26 15:12 ` hazen2215 [this message]
2022-12-27  1:34 ` [PR PATCH] [Merged]: " sgn

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=20221226151206.Bmg9a3LR4suoNANFg8ULkOZN5FdKjV-0W3XkzUPv2LI@z \
    --to=hazen2215@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /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;
as well as URLs for NNTP newsgroup(s).