[gentoo-commits] repo/gentoo:master commit in: sys-process/daemontools-encore/, sys-process/daemontools-encore/files/

2023-06-18 Thread Joonas Niilola
commit: bc9f8762d2f2ff1a64ffec7b02909b31a23baac2
Author: Brahmajit Das  gmail  com>
AuthorDate: Tue Jun 13 04:34:29 2023 +
Commit: Joonas Niilola  gentoo  org>
CommitDate: Sun Jun 18 12:08:16 2023 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc9f8762

sys-process/daemontools-encore: Fix call to undeclared function sigblock

Closes: https://bugs.gentoo.org/898852
Signed-off-by: Brahmajit Das  gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31409
Signed-off-by: Joonas Niilola  gentoo.org>

 .../daemontools-encore-1.11-r2.ebuild  | 58 ++
 ...encore-1.11-use-posix-complaint-functions.patch | 49 ++
 2 files changed, 107 insertions(+)

diff --git a/sys-process/daemontools-encore/daemontools-encore-1.11-r2.ebuild 
b/sys-process/daemontools-encore/daemontools-encore-1.11-r2.ebuild
new file mode 100644
index ..611a61497c33
--- /dev/null
+++ b/sys-process/daemontools-encore/daemontools-encore-1.11-r2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic qmail
+
+DESCRIPTION="Collection of tools for managing UNIX services"
+HOMEPAGE="https://untroubled.org/daemontools-encore/;
+SRC_URI="https://untroubled.org/daemontools-encore/${P}.tar.gz;
+
+LICENSE="GPL-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~x86"
+IUSE="selinux static"
+
+RDEPEND="
+   !app-doc/daemontools-man
+   !sys-process/daemontools
+   selinux? ( sec-policy/selinux-daemontools )
+"
+
+PATCHES=(
+   "${FILESDIR}"/${PN}-1.11-do-not-always-run-tests.patch
+   "${FILESDIR}"/${PN}-1.11-add-missing-setuser-man-page.patch
+   "${FILESDIR}"/${PN}-1.11-implicit-func-decl-clang16.patch
+   "${FILESDIR}"/${PN}-1.11-use-posix-complaint-functions.patch
+)
+
+src_compile() {
+   use static && append-ldflags -static
+   qmail_set_cc
+   emake
+}
+
+src_install() {
+   keepdir /service
+
+   echo "${ED}/usr/bin" > conf-bin || die
+   echo "${ED}/usr/share/man" > conf-man || die
+   dodir /usr/bin
+   dodir /usr/share/man
+   emake install
+
+   dodoc ChangeLog CHANGES CHANGES.djb README TODO
+
+   newinitd "${FILESDIR}"/svscan.init-2 svscan
+}
+
+pkg_postinst() {
+   einfo
+   einfo "You can run daemontools using the svscan init.d script,"
+   einfo "or you could run it through inittab."
+   einfo "To use inittab, emerge supervise-scripts and run:"
+   einfo "svscan-add-to-inittab"
+   einfo "Then you can hup init with the command telinit q"
+   einfo
+}

diff --git 
a/sys-process/daemontools-encore/files/daemontools-encore-1.11-use-posix-complaint-functions.patch
 
b/sys-process/daemontools-encore/files/daemontools-encore-1.11-use-posix-complaint-functions.patch
new file mode 100644
index ..bc4c12fc366c
--- /dev/null
+++ 
b/sys-process/daemontools-encore/files/daemontools-encore-1.11-use-posix-complaint-functions.patch
@@ -0,0 +1,49 @@
+https://github.com/bruceg/daemontools-encore/pull/66
+From: Brahmajit Das 
+Date: Tue, 13 Jun 2023 04:27:36 +
+Subject: [PATCH] sig_block.c: use posix complaint functions on non glibc
+ systems
+
+This build error came while building on musl /w clang-16.
+In contrast to glibc, musl is not having the "legacy" BSD functions and only 
POSIX sigprocmask.
+
+The exact error was:
+sig_block.c:15:3: error: call to undeclared function 'sigblock'; ISO C99 and 
later do not
+  support implicit function declarations [-Wimplicit-function-declaration]
+  sigblock(1 << (sig - 1));
+  ^
+sig_block.c:15:3: note: did you mean 'sig_block'?
+sig_block.c:7:6: note: 'sig_block' declared here
+void sig_block(int sig)
+ ^
+1 warning generated.
+sig_block.c:27:3: error: call to undeclared function 'sigsetmask'; ISO C99 and 
later do not
+  support implicit function declarations [-Wimplicit-function-declaration]
+  sigsetmask(sigsetmask(~0) & ~(1 << (sig - 1)));
+  ^
+sig_block.c:38:3: error: call to undeclared function 'sigsetmask'; ISO C99 and 
later do not
+  support implicit function declarations [-Wimplicit-function-declaration]
+  sigsetmask(0);
+  ^
+
+This patch should fix the error
+
+Bug: https://bugs.gentoo.org/898852
+Signed-off-by: Brahmajit Das 
+--- a/sig_block.c
 b/sig_block.c
+@@ -4,6 +4,11 @@
+ #include "sig.h"
+ #include "hassgprm.h"
+ 
++// Use POSIX complaint functions when using non-Glibc system
++#ifndef __GLIBC__
++#define HASSIGPROCMASK 0
++#endif
++
+ void sig_block(int sig)
+ {
+ #ifdef HASSIGPROCMASK
+-- 
+2.41.0
+



[gentoo-commits] repo/gentoo:master commit in: sys-process/daemontools-encore/, sys-process/daemontools-encore/files/

2019-01-17 Thread Thomas Deutschmann
commit: 1b14c147db4e7d0862cc49fb0c73e1376cf52c20
Author: Thomas Deutschmann  gentoo  org>
AuthorDate: Fri Jan 18 02:50:10 2019 +
Commit: Thomas Deutschmann  gentoo  org>
CommitDate: Fri Jan 18 02:51:00 2019 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b14c147

sys-process/daemontools-encore: bump to v1.11

Package-Manager: Portage-2.3.56, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann  gentoo.org>

 sys-process/daemontools-encore/Manifest|  1 +
 .../daemontools-encore-1.11.ebuild | 55 +
 ...-encore-1.11-add-missing-setuser-man-page.patch | 68 ++
 ...tools-encore-1.11-do-not-always-run-tests.patch | 21 +++
 4 files changed, 145 insertions(+)

diff --git a/sys-process/daemontools-encore/Manifest 
b/sys-process/daemontools-encore/Manifest
index 843461195af..bddd090077f 100644
--- a/sys-process/daemontools-encore/Manifest
+++ b/sys-process/daemontools-encore/Manifest
@@ -1 +1,2 @@
 DIST daemontools-encore-1.10.tar.gz 87096 BLAKE2B 
f0e5accc319caa1b4f4f15f5bdf2c2d59c5f398698509ad288a9b7ba33944fb49155386bf0edebda20959ea1c7d1fce14be883a0a96c1d2e054886c7df17d64a
 SHA512 
569030fb9941186f167644740d0424987105b7a818d5a3cdb4e90ced5530a16938b7205141ca2f198f83362269f9cc28eb5acafe9cd7f985c8e56d307f706767
+DIST daemontools-encore-1.11.tar.gz 94917 BLAKE2B 
747da62ae97d4e4b28ca5309cbf835fe989db23d9f7a408bcce6fa7b17a658740024867daf9116dcbcb02e16a6b0ee92210bd485ecceef9b7ecbb2e0ea79e110
 SHA512 
1e1a96a948d551bfc38496740eaa85b7cae0d2469419293b133533da75ca03657fe6108129703ad7b773925c58ce84a4f242eb612133fb0c499f47ae50423a8a

diff --git a/sys-process/daemontools-encore/daemontools-encore-1.11.ebuild 
b/sys-process/daemontools-encore/daemontools-encore-1.11.ebuild
new file mode 100644
index 000..80d87fa6647
--- /dev/null
+++ b/sys-process/daemontools-encore/daemontools-encore-1.11.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit flag-o-matic qmail
+
+DESCRIPTION="Collection of tools for managing UNIX services"
+HOMEPAGE="https://untroubled.org/daemontools-encore/;
+SRC_URI="https://untroubled.org/daemontools-encore/${P}.tar.gz;
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="selinux static"
+
+DEPEND=""
+RDEPEND="selinux? ( sec-policy/selinux-daemontools )
+   !sys-process/daemontools
+   !app-doc/daemontools-man"
+
+PATCHES=(
+   "${FILESDIR}"/${PN}-1.11-do-not-always-run-tests.patch
+   "${FILESDIR}"/${PN}-1.11-add-missing-setuser-man-page.patch
+)
+
+src_compile() {
+   use static && append-ldflags -static
+   qmail_set_cc
+   emake
+}
+
+src_install() {
+   keepdir /service
+
+   echo "${ED%/}/usr/bin" >conf-bin
+   echo "${ED%/}/usr/share/man" >conf-man
+   dodir /usr/bin
+   dodir /usr/share/man
+   emake install
+
+   dodoc ChangeLog CHANGES CHANGES.djb README TODO
+
+   newinitd "${FILESDIR}"/svscan.init-2 svscan
+}
+
+pkg_postinst() {
+   einfo
+   einfo "You can run daemontools using the svscan init.d script,"
+   einfo "or you could run it through inittab."
+   einfo "To use inittab, emerge supervise-scripts and run:"
+   einfo "svscan-add-to-inittab"
+   einfo "Then you can hup init with the command telinit q"
+   einfo
+}

diff --git 
a/sys-process/daemontools-encore/files/daemontools-encore-1.11-add-missing-setuser-man-page.patch
 
b/sys-process/daemontools-encore/files/daemontools-encore-1.11-add-missing-setuser-man-page.patch
new file mode 100644
index 000..58b159b762e
--- /dev/null
+++ 
b/sys-process/daemontools-encore/files/daemontools-encore-1.11-add-missing-setuser-man-page.patch
@@ -0,0 +1,68 @@
+Add missing setuser.8
+
+Upstream-bug: https://github.com/bruceg/daemontools-encore/issues/60
+
+--- /dev/null
 b/setuser.8
+@@ -0,0 +1,61 @@
++.TH setuser 8
++.SH NAME
++setuser \- runs another program under a specified account's environment.
++.SH SYNOPSIS
++.B setuser
++.I account
++.I child
++.SH DESCRIPTION
++.I account
++is a single argument.
++.I child
++consists of one or more arguments. 
++
++.B setuser
++sets
++.BR $GID ,
++.BR $UID ,
++.BR $SHELL ,
++.BR $HOME ,
++and
++.BR $USER
++to
++.IR account 's
++gid number, uid number, login shell, home directory, and user name, 
respectively.
++It changes the working directory to
++.IR account 's
++home, and sets its uid and gid to
++.IR account 's
++uid and gid, with supplementary groups set up.
++It then runs
++.IR child .
++
++.B setuser
++cannot be run by anyone other than root.
++.SH EXIT CODES
++.B setuser
++exits 111 if it cannot find a UNIX account named
++.IB account ,
++if it cannot setup the environment, change directory, setgid, setuid, or run
++.IR child .
++Otherwise its exit code is the same as that of
++.IR child .
++.SH SEE ALSO
++envdir(8),
++envini(8),
++envuidgid(8),
++fghack(8),  
++multilog(8),
++pgrphack(8),