summaryrefslogtreecommitdiff
path: root/sys-process/daemontools
diff options
context:
space:
mode:
Diffstat (limited to 'sys-process/daemontools')
-rw-r--r--sys-process/daemontools/Manifest6
-rw-r--r--sys-process/daemontools/daemontools-0.76-r10.ebuild2
-rw-r--r--sys-process/daemontools/daemontools-0.76-r11.ebuild2
-rw-r--r--sys-process/daemontools/daemontools-0.76-r12.ebuild55
-rw-r--r--sys-process/daemontools/files/0.76-const-typecasts-C99.patch292
5 files changed, 353 insertions, 4 deletions
diff --git a/sys-process/daemontools/Manifest b/sys-process/daemontools/Manifest
index 4f33907629ad..5dae7f2ee873 100644
--- a/sys-process/daemontools/Manifest
+++ b/sys-process/daemontools/Manifest
@@ -1,10 +1,12 @@
AUX 0.76-C99-decls.patch 10397 BLAKE2B 3072b01973ebdf4e12d2d25ac70a953028c360a721b2ca6ef9cd05d6803fb3c9e48d9b7b11112d401e16b5e9dc039500cb2d9b5752000dcaabcc905c70643ad8 SHA512 36695347e98d4dc177f685cddcf9e7331da8630f0632d1fb35a2df1898c9e4a73d8908b56dd218d9b6f06cd3f063e6a946567ab256498bf0d425ea2f06719c58
+AUX 0.76-const-typecasts-C99.patch 9031 BLAKE2B 694b57edb7e44e6646191f0a9ae5d5fc44f29962eb56ed9e2410ac5d52b7059ec9743295c968b42c1a48fe6817628c326292cc243c0d367261160293079230df SHA512 bef1878140428a5c1ba06ad7d7d375c875569ca95ada71752de5bf3f969df839ac59f588b258e24673d5f6a3195c78c9868dd61c3d3a63583508fd0deb40d2fd
AUX 0.76-errno.patch 246 BLAKE2B 10fc1da86bb91657dd9f1709f1f58852d93e6baa61ab89ce56911066677975699af1feff69bda5218afb36f2fbb66af6b810d5a9d8b6938054ff0123172c657a SHA512 76664b71e16ba4dbb081604a1a8c9ddc58a603777dccc0a53b0af9442ff8f0cdfce9ef8b05926dac62b81b2c805262df6a7e4df65920c00583132dbf136ba85e
AUX 0.76-implicit-func-decl-clang16.patch 265 BLAKE2B 711ea0ff926d93964e6333745eb830979f50929892650489367246ab3c93963b28a4cecac5a3f72defa50646550b623687119036ac412930c836569c728cf37b SHA512 209250b752cda3d3b67784e3c906c02ae365de884dec759e21fd14ecaa433f7f6d646afc918d8c0ffd9eab313ccaacf482e1920669b9e2c884b79b7e1cfd6f66
AUX 0.76-makefile.patch 3630 BLAKE2B 777309c2c8d029927e29b1587c751ce9100dbc258d22b6b45d1375b52a15bb0c369086d762e521b4858eaaed432d06f834c7bee3c0de208fbcab05f7712e9a5d SHA512 8df1923e9b3fa84430941c652bf3462e6ce9d4dfee67ccfce36512124aaa7ad364c2a8f2f2c1e4fef2ffb55a60491fe5208df576965d072a3c5c396da711d030
AUX svscan.init-0.76-r7 685 BLAKE2B eb6caac65f18fa0c617a8e7d4e3474b562ff9a352a343cb24cf08ac29caaf1eff19652839552cc58bcb18ca4f82b5702dcc2828695647c5ce9af15bc63083dd7 SHA512 ba44f4dacd130a6cef6ac6e4cc3ffbd98ed3bcb75eab3441f7c6ee1899bb87f5e3ca491b83393f381f36460a522faf2f171dd4b74a92e9e222dbc1bbd3ff6b4b
DIST daemontools-0.76-man-20020131.tar.gz 8005 BLAKE2B 0c8f0ae71754516fda772b3771a9e68499aed17f3035dee3c2bb36012fb4e411cac9146eb5889306f00e03a14ef65194e1b6f76d45890175642405797da2201b SHA512 1767fafb2d92902f903637f08363031971bda007d1b7b53059551c740976d1c643229ccc44171796c1dcb43cbd875a17178edc634e140671817e0ef0ba3ad80b
DIST daemontools-0.76.tar.gz 36975 BLAKE2B cb45c92fc06169b617befe9f9193377a07d31e9e6ae05526c299ce2a63c8009b599384a87f768fbe9283b229083ef74007b85662976cf7add5c855f5018fafa8 SHA512 e4a7938352b745a03ccc41acdddba1e6782f0ca245e5cae060de62ab6c5a23c841a994c30140298d274405a7f26d53ba7e84e5810a3d185b2c01e4c0feffe6c7
-EBUILD daemontools-0.76-r10.ebuild 1343 BLAKE2B b34581ec22e8be4c29b76995d351aa559c6aa5471b8aa38adf8500493088639724cf66e7c19e1cbc7a06f589b60eefddb58c22fa05e1178b0083e163597c16f0 SHA512 6293cf98ed25b886e80013b07e98117073f03d6f0a4f2a186e74fd4a1fe152ce490ecad31192903681be1ef04182db3d7171236d69b0758a99ca86194eab5f13
-EBUILD daemontools-0.76-r11.ebuild 1397 BLAKE2B b8e5ea3cc96ba23a01b96a7234ac83a127c83b23f1494be3bd822d288bd2a51495fcc52bea5d07fd480784ff4a44204779947fdd6b4327fcbd6202e48741afd0 SHA512 29010524af5267947c69bf7f7ea99588575a715db392961c048bb6828c0ba16474c866dff3f65385b6b09499be1e5776283d2a6a386e8ad99c0da9ca0e56845c
+EBUILD daemontools-0.76-r10.ebuild 1337 BLAKE2B dcf058cdff239e3ec759427383c1e7edf458d7194cb9061090d9162976b24e6036d9962691d182d1f390297543496f333d65365ac4bd250aac7fe625fde7eada SHA512 3be0cf82ac32ddfbb143faa6b595a97d2ae380d00a092b6a0f8901fbc64cb36861a0fccad6baee38fab87d0a63d9e7dfa0652076102bc86abb0bd82a309079ab
+EBUILD daemontools-0.76-r11.ebuild 1391 BLAKE2B fa0b9f635696f4a8dea370eececa327420267c55490df5560305b593f7023b79df3a1f97daef4449d9de6b6010c779ca9355435392e5cf1d979cef6000607323 SHA512 449b97ffb24c13d9bfa3df392450f7ad995c74f4d0c7cff20cb60973d6c90c0da9a099ed0b4d4d124cc86c3fa8ea1cb288dbc626b9f521fd645a322aea089e34
+EBUILD daemontools-0.76-r12.ebuild 1446 BLAKE2B d2d382c509de64df6027cc55ca3f2738035a36f7c62768d6cc4205b5767da7d5a7f003c42f172f80f7ac903a8f6cf8914d1e0eb4a886088c51cc80052f9fa73a SHA512 77ba9e33e54597cd86296e15608fa164240871cd4f32a5663032690e7032135263ce7c0267a772fd9f1afd84d6a627d9805eb8a0dab399868c29d172f5c94d06
MISC metadata.xml 168 BLAKE2B 2e0e000b4c3b6ca04c12903fdbe278415c05a822623c52e9aa95cbbf3d50bcb1246b7edbda7d2f6b559af8950c6374e6e0a69b76319964cfe686bf50b0604a57 SHA512 4dcf45d1809e8390a2d8155c8ebfe0dd610203e392aeab0ccd8a10f42cc8532a4925eff32b35e7a6c35598a4efd288229034ec0732299dbd8cfa0acff705fed3
diff --git a/sys-process/daemontools/daemontools-0.76-r10.ebuild b/sys-process/daemontools/daemontools-0.76-r10.ebuild
index 5bf42bc7b17d..0f2ea94c35db 100644
--- a/sys-process/daemontools/daemontools-0.76-r10.ebuild
+++ b/sys-process/daemontools/daemontools-0.76-r10.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}/admin/${P}/src"
LICENSE="public-domain GPL-2" # GPL-2 for init script
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="selinux static"
RDEPEND="selinux? ( sec-policy/selinux-daemontools )"
diff --git a/sys-process/daemontools/daemontools-0.76-r11.ebuild b/sys-process/daemontools/daemontools-0.76-r11.ebuild
index ae2e8e39d1d8..7dc6075ef6f8 100644
--- a/sys-process/daemontools/daemontools-0.76-r11.ebuild
+++ b/sys-process/daemontools/daemontools-0.76-r11.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}/admin/${P}/src"
LICENSE="public-domain GPL-2" # GPL-2 for init script
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="selinux static"
RDEPEND="selinux? ( sec-policy/selinux-daemontools )"
diff --git a/sys-process/daemontools/daemontools-0.76-r12.ebuild b/sys-process/daemontools/daemontools-0.76-r12.ebuild
new file mode 100644
index 000000000000..8bd1f492085f
--- /dev/null
+++ b/sys-process/daemontools/daemontools-0.76-r12.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Collection of tools for managing UNIX services"
+HOMEPAGE="https://cr.yp.to/daemontools.html"
+SRC_URI="
+ https://cr.yp.to/daemontools/${P}.tar.gz
+ https://smarden.org/pape/djb/manpages/${P}-man-20020131.tar.gz"
+S="${WORKDIR}/admin/${P}/src"
+
+LICENSE="public-domain GPL-2" # GPL-2 for init script
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="selinux static"
+
+RDEPEND="selinux? ( sec-policy/selinux-daemontools )"
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-errno.patch
+ "${FILESDIR}"/${PV}-C99-decls.patch
+ "${FILESDIR}"/${PV}-makefile.patch
+ "${FILESDIR}"/${PV}-implicit-func-decl-clang16.patch
+ "${FILESDIR}"/${PV}-const-typecasts-C99.patch
+)
+
+src_configure() {
+ tc-export AR CC
+ use static && append-ldflags -static
+
+ touch home || die
+}
+
+src_install() {
+ keepdir /service
+
+ dobin $(<../package/commands)
+ dodoc CHANGES ../package/README TODO
+ doman "${WORKDIR}"/${PN}-man/*.8
+
+ newinitd "${FILESDIR}"/svscan.init-0.76-r7 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/files/0.76-const-typecasts-C99.patch b/sys-process/daemontools/files/0.76-const-typecasts-C99.patch
new file mode 100644
index 000000000000..3b34db2d2c08
--- /dev/null
+++ b/sys-process/daemontools/files/0.76-const-typecasts-C99.patch
@@ -0,0 +1,292 @@
+Memory allocation should have internal accounting and automatically
+free the memory that was allocated and pointed by this, whatever
+type pointer is.
+Also, there's a lot of erroneous assignments of const types, added
+consts everywhere, removed or cast them away only where it was impossible
+https://bugs.gentoo.org/920062
+--- a/pathexec_env.c 2024-05-11 08:21:41.834811961 +0000
++++ b/pathexec_env.c 2024-05-11 08:23:16.190437842 +0000
+@@ -65,5 +65,5 @@
+ e[elen] = 0;
+
+ pathexec_run(*argv,argv,e);
+- alloc_free(e);
++ alloc_free((char *)e);
+ }
+diff '--color=auto' -ru a/buffer.c b/buffer.c
+--- a/buffer.c 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer.c 2024-06-23 17:53:20.305622176 -0000
+@@ -2,7 +2,7 @@
+
+ #include "buffer.h"
+
+-void buffer_init(buffer *s,int (*op)(int, char*, int),int fd,char *buf,unsigned int len)
++void buffer_init(buffer *s,int (*op)(int, const char*, int),int fd,char *buf,unsigned int len)
+ {
+ s->x = buf;
+ s->fd = fd;
+diff '--color=auto' -ru a/buffer.h b/buffer.h
+--- a/buffer.h 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer.h 2024-06-23 17:56:59.835455791 -0000
+@@ -8,14 +8,14 @@
+ unsigned int p;
+ unsigned int n;
+ int fd;
+- int (*op)(int, char*, int);
++ int (*op)(int, const char*, int);
+ } buffer;
+
+ #define BUFFER_INIT(op,fd,buf,len) { (buf), 0, (len), (fd), (op) }
+ #define BUFFER_INSIZE 8192
+ #define BUFFER_OUTSIZE 8192
+
+-extern void buffer_init(buffer *, int (*)(int, char*, int), int, char *, unsigned int);
++extern void buffer_init(buffer *, int (*)(int, const char*, int), int, char *, unsigned int);
+
+ extern int buffer_flush(buffer *);
+ extern int buffer_put(buffer *,const char *,unsigned int);
+@@ -49,8 +49,8 @@
+
+ extern int buffer_copy(buffer *,buffer *);
+
+-extern int buffer_unixread(int,char *,unsigned int);
+-extern int buffer_unixwrite(int, char *, int);
++extern int buffer_unixread(int,const char *,unsigned int);
++extern int buffer_unixwrite(int, const char *, int);
+
+ extern buffer *buffer_0;
+ extern buffer *buffer_0small;
+diff '--color=auto' -ru a/buffer_0.c b/buffer_0.c
+--- a/buffer_0.c 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer_0.c 2024-06-23 18:00:19.773386824 -0000
+@@ -2,7 +2,7 @@
+
+ #include "buffer.h"
+
+-int buffer_0_read(int fd, char *buf, int len)
++int buffer_0_read(int fd, const char *buf, int len)
+ {
+ if (buffer_flush(buffer_1) == -1) return -1;
+ return buffer_unixread(fd,buf,len);
+diff '--color=auto' -ru a/buffer_get.c b/buffer_get.c
+--- a/buffer_get.c 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer_get.c 2024-06-23 17:54:25.506277116 -0000
+@@ -4,7 +4,7 @@
+ #include "byte.h"
+ #include "error.h"
+
+-static int oneread(int (*op)(int, char*, int),int fd,char *buf,unsigned int len)
++static int oneread(int (*op)(int, const char*, int),int fd,char *buf,unsigned int len)
+ {
+ int r;
+
+diff '--color=auto' -ru a/buffer_put.c b/buffer_put.c
+--- a/buffer_put.c 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer_put.c 2024-06-23 17:51:41.689144081 -0000
+@@ -5,7 +5,7 @@
+ #include "byte.h"
+ #include "error.h"
+
+-static int allwrite(int (*op)(int, char*, int),int fd,const char *buf,unsigned int len)
++static int allwrite(int (*op)(int, const char*, int),int fd,const char *buf,unsigned int len)
+ {
+ int w;
+
+diff '--color=auto' -ru a/buffer_read.c b/buffer_read.c
+--- a/buffer_read.c 2024-06-23 17:46:32.387780989 -0000
++++ b/buffer_read.c 2024-06-23 18:04:30.854044424 -0000
+@@ -3,7 +3,7 @@
+ #include <unistd.h>
+ #include "buffer.h"
+
+-int buffer_unixread(int fd,char *buf,unsigned int len)
++int buffer_unixread(int fd,const char *buf,unsigned int len)
+ {
+- return read(fd,buf,len);
++ return read(fd,(void *)buf,len);
+ }
+diff '--color=auto' -ru a/buffer_write.c b/buffer_write.c
+--- a/buffer_write.c 2024-06-23 17:46:32.395780947 -0000
++++ b/buffer_write.c 2024-06-23 17:55:26.617953696 -0000
+@@ -3,7 +3,7 @@
+ #include <unistd.h>
+ #include "buffer.h"
+
+-int buffer_unixwrite(int fd, char *buf, int len)
++int buffer_unixwrite(int fd, const char *buf, int len)
+ {
+ return write(fd,buf,len);
+ }
+diff '--color=auto' -ru a/byte.h b/byte.h
+--- a/byte.h 2024-06-23 17:46:32.395780947 -0000
++++ b/byte.h 2024-06-23 18:07:46.502998389 -0000
+@@ -4,10 +4,10 @@
+ #define BYTE_H
+
+ unsigned int byte_chr(char *s, unsigned int n, int c);
+-unsigned int byte_rchr(char *s, unsigned int n, int c);
+-void byte_copy(char *to, unsigned int n, char *from);
++unsigned int byte_rchr(const char *s, unsigned int n, int c);
++void byte_copy(char *to, unsigned int n, const char *from);
+ void byte_copyr(char *to, unsigned int n, char *from);
+-int byte_diff(char *s, unsigned int n, char *t);
++int byte_diff(char *s, unsigned int n, const char *t);
+
+ #define byte_equal(s,n,t) (!byte_diff((s),(n),(t)))
+
+diff '--color=auto' -ru a/byte_copy.c b/byte_copy.c
+--- a/byte_copy.c 2024-06-23 17:46:32.395780947 -0000
++++ b/byte_copy.c 2024-06-23 17:48:30.327156821 -0000
+@@ -2,7 +2,7 @@
+
+ #include "byte.h"
+
+-void byte_copy(char *to, unsigned int n, char *from)
++void byte_copy(char *to, unsigned int n, const char *from)
+ {
+ for (;;) {
+ if (!n) return; *to++ = *from++; --n;
+diff '--color=auto' -ru a/byte_diff.c b/byte_diff.c
+--- a/byte_diff.c 2024-06-23 17:46:32.396780942 -0000
++++ b/byte_diff.c 2024-06-23 17:48:50.431050426 -0000
+@@ -2,7 +2,7 @@
+
+ #include "byte.h"
+
+-int byte_diff(char *s, unsigned int n, char *t)
++int byte_diff(char *s, unsigned int n, const char *t)
+ {
+ for (;;) {
+ if (!n) return 0; if (*s != *t) break; ++s; ++t; --n;
+diff '--color=auto' -ru a/byte_rchr.c b/byte_rchr.c
+--- a/byte_rchr.c 2024-06-23 17:46:32.396780942 -0000
++++ b/byte_rchr.c 2024-06-23 18:08:32.408752954 -0000
+@@ -2,11 +2,11 @@
+
+ #include "byte.h"
+
+-unsigned int byte_rchr(char *s, unsigned int n, int c)
++unsigned int byte_rchr(const char *s, unsigned int n, int c)
+ {
+ register char ch;
+- register char *t;
+- register char *u;
++ register const char *t;
++ register const char *u;
+
+ ch = c;
+ t = s;
+diff '--color=auto' -ru a/multilog.c b/multilog.c
+--- a/multilog.c 2024-06-23 17:46:32.396780942 -0000
++++ b/multilog.c 2024-06-23 18:09:29.152449574 -0000
+@@ -173,7 +173,7 @@
+
+ void startprocessor(struct cyclog *d)
+ {
+- const char *args[4];
++ char *args[4];
+ int fd;
+
+ sig_uncatch(sig_term);
+@@ -268,7 +268,7 @@
+ }
+ }
+
+-int c_write(int pos,char *buf,int len)
++int c_write(int pos,const char *buf,int len)
+ {
+ struct cyclog *d;
+ int w;
+@@ -446,7 +446,7 @@
+ flagforcerotate = 1;
+ }
+
+-int flushread(int fd,char *buf,int len)
++int flushread(int fd,const char *buf,int len)
+ {
+ int j;
+
+@@ -468,7 +468,7 @@
+ sig_unblock(sig_term);
+ sig_unblock(sig_alarm);
+
+- len = read(fd,buf,len);
++ len = read(fd,(void *)buf,len);
+
+ sig_block(sig_term);
+ sig_block(sig_alarm);
+diff '--color=auto' -ru a/pathexec_run.c b/pathexec_run.c
+--- a/pathexec_run.c 2024-06-23 17:46:32.396780942 -0000
++++ b/pathexec_run.c 2024-06-23 17:59:54.340522801 -0000
+@@ -16,7 +16,7 @@
+ int savederrno;
+
+ if (file[str_chr(file,'/')]) {
+- execve(file,argv,envp);
++ execve(file,(char *const *)argv,(char *const *)envp);
+ return;
+ }
+
+@@ -33,7 +33,7 @@
+ if (!stralloc_cats(&tmp,file)) return;
+ if (!stralloc_0(&tmp)) return;
+
+- execve(tmp.s,argv,envp);
++ execve(tmp.s,(char *const *)argv,(char *const *)envp);
+ if (errno != error_noent) {
+ savederrno = errno;
+ if ((errno != error_acces) && (errno != error_perm) && (errno != error_isdir)) return;
+diff '--color=auto' -ru a/supervise.c b/supervise.c
+--- a/supervise.c 2024-06-23 17:46:32.397780936 -0000
++++ b/supervise.c 2024-06-23 18:03:30.334367992 -0000
+@@ -85,7 +85,7 @@
+ write(selfpipe[1],"",1);
+ }
+
+-const char *run[2] = { "./run", 0 };
++char * const run[2] = { "./run", 0 };
+
+ void trystart(void)
+ {
+diff '--color=auto' -ru a/svscan.c b/svscan.c
+--- a/svscan.c 2024-06-23 17:46:32.385781000 -0000
++++ b/svscan.c 2024-06-23 17:47:36.647440909 -0000
+@@ -101,7 +101,7 @@
+ args[0] = "supervise";
+ args[1] = fn;
+ args[2] = 0;
+- pathexec_run(*args,args,environ);
++ pathexec_run(*args,args,(const char *const *)environ);
+ strerr_die4sys(111,WARNING,"unable to start supervise ",fn,": ");
+ default:
+ x[i].pid = child;
+@@ -120,7 +120,7 @@
+ args[0] = "supervise";
+ args[1] = "log";
+ args[2] = 0;
+- pathexec_run(*args,args,environ);
++ pathexec_run(*args,args,(const char *const *)environ);
+ strerr_die4sys(111,WARNING,"unable to start supervise ",fn,"/log: ");
+ default:
+ x[i].pidlog = child;
+diff '--color=auto' -ru a/tai64n.c b/tai64n.c
+--- a/tai64n.c 2024-06-23 17:46:32.397780936 -0000
++++ b/tai64n.c 2024-06-23 18:05:56.551586243 -0000
+@@ -2,7 +2,7 @@
+ #include "timestamp.h"
+ #include "buffer.h"
+
+-int mywrite(int fd,char *buf,int len)
++int mywrite(int fd,const char *buf,int len)
+ {
+ int w;
+ w = buffer_unixwrite(fd,buf,len);
+@@ -13,7 +13,7 @@
+ char outbuf[2048];
+ buffer out = BUFFER_INIT(mywrite,1,outbuf,sizeof outbuf);
+
+-int myread(int fd,char *buf,int len)
++int myread(int fd,const char *buf,int len)
+ {
+ int r;
+ buffer_flush(&out);