summaryrefslogtreecommitdiff
path: root/sys-process/schedtool
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-04 01:57:57 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-04 01:57:57 +0000
commitfa3c4c282d03b85eb600bae6ec57b619004feb5a (patch)
treee427243594c435e7223f05759d54ec8f412e67ea /sys-process/schedtool
parent0a3d5f62f59ea08933fd51b22c8c35ea85e2ce7c (diff)
gentoo auto-resync : 04:01:2024 - 01:57:56
Diffstat (limited to 'sys-process/schedtool')
-rw-r--r--sys-process/schedtool/Manifest2
-rw-r--r--sys-process/schedtool/files/schedtool-1.3.0-c99.patch33
-rw-r--r--sys-process/schedtool/schedtool-1.3.0-r2.ebuild36
3 files changed, 71 insertions, 0 deletions
diff --git a/sys-process/schedtool/Manifest b/sys-process/schedtool/Manifest
index 29220bb2c04c..42280af50ec3 100644
--- a/sys-process/schedtool/Manifest
+++ b/sys-process/schedtool/Manifest
@@ -1,3 +1,5 @@
+AUX schedtool-1.3.0-c99.patch 1040 BLAKE2B 3bf6de11ec6cbce4a1530bd66b97faf5455728f3e6c8b568cba7549ce376e499085bf1608b42c81f4737d2c83bf96971e7833ade48a352621fdb90ae55c2cc31 SHA512 7cb1027c378d9ef07bbe2b8bb3c21ddcd6ad309b208a126d0bcb630c5fe32309453d1afd913de5514645198ea033ca6d33844cff7d6f0e68048ac629fcc15e3d
DIST schedtool-1.3.0.tar.gz 29040 BLAKE2B 45e9f0c84b99be83be4e250c71a3ef43e323efff565a89a8e69960b8cb703faa7df94fbfbd3a11863e4ecb54cc07acca8cd7803e21aaafe59cc0e923d1117025 SHA512 71b7bbc91ee86a83639b179c8cce70e0fd3acca3af3cbc51880cf1f177fdd901e1fb6d0ecea2aa40761608589e7b903431ac97d5046f9ec50535bad691af2964
EBUILD schedtool-1.3.0-r1.ebuild 785 BLAKE2B 7a0384120162e90dcc3df8b60759ea32ae4b995a484bde5e572c6b0e29def9fa15bda8b09f7a88226e0494c001821362e08abac7bbb0b4e4340562e98347059f SHA512 1d654c40a0a067a5b26c05d4f3fe1f978c30fc7c0fdd0a1d4694339519ceb83d4ef52b244d8d05e3558b7d3f66d50e36596fda4fc56142c8f818bede0f70196f
+EBUILD schedtool-1.3.0-r2.ebuild 831 BLAKE2B 175c7b11492ec33a20b5156a52c4b037bff4172be6ebd962a14b2daa4db35abb67dfd5b3cefbbe1cba5a1d6a034d7b732f869d3ec6ed8e33be3739b743c596b0 SHA512 811fb48f83883dd60b40bb167dfa99253942c6d721847a1d639d9c6d7922da0fa56baa72e47a3de1a5d3db80910754f25aac0109b020578d9c0f48716febe244
MISC metadata.xml 252 BLAKE2B b3f1f88797710ca64e0608a76efb3c82e9e51e190ac0efd139916b1d15f433d16735b491e2e2950f6b085e917f676c1a9bbe411f73f9e7dfa0b5e9ae6f5edb5f SHA512 ae8a9440fa87122d4a1aaece3e6759402ece2bc6a65e304eaf3de043bd2d6dcd878bebd184a3990a2181310742d000b0d015cdcbd2fd480209388d3211d5bf0a
diff --git a/sys-process/schedtool/files/schedtool-1.3.0-c99.patch b/sys-process/schedtool/files/schedtool-1.3.0-c99.patch
new file mode 100644
index 000000000000..8f3c0b33afca
--- /dev/null
+++ b/sys-process/schedtool/files/schedtool-1.3.0-c99.patch
@@ -0,0 +1,33 @@
+https://bugs.gentoo.org/918974
+https://src.fedoraproject.org/rpms/schedtool/c/f84b6a0fdc4b368e2b1c5ea59739f002063e3c9e?branch=rawhide
+
+Invoke decode_error separately with the correct argument types for
+each variant. This avoids an int-conversion error.
+
+--- a/schedtool.c
++++ b/schedtool.c
+@@ -422,19 +422,14 @@ int set_process(pid_t pid, int policy, int prio)
+ struct sched_param p;
+ int ret;
+
+- char *msg1="could not set PID %d to %s";
+- char *msg2="could not set PID %d to raw policy #%d";
+-
+ p.sched_priority=prio;
+
+ /* anything other than 0 indicates error */
+ if((ret=sched_setscheduler(pid, policy, &p))) {
+-
+- /* la la pointer mismatch .. lala */
+- decode_error((CHECK_RANGE_POLICY(policy) ? msg1 : msg2),
+- pid,
+- (CHECK_RANGE_POLICY(policy) ? TAB[policy] : policy)
+- );
++ if (CHECK_RANGE_POLICY(policy))
++ decode_error("could not set PID %d to %s", pid, TAB[policy]);
++ else
++ decode_error("could not set PID %d to raw policy #%d", pid, policy);
+ return(ret);
+ }
+ return(0);
+
diff --git a/sys-process/schedtool/schedtool-1.3.0-r2.ebuild b/sys-process/schedtool/schedtool-1.3.0-r2.ebuild
new file mode 100644
index 000000000000..7f3a2230158e
--- /dev/null
+++ b/sys-process/schedtool/schedtool-1.3.0-r2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="A tool to query or alter a process' scheduling policy"
+HOMEPAGE="https://github.com/freequaos/schedtool"
+SRC_URI="https://github.com/freequaos/schedtool/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.0-c99.patch
+)
+
+src_prepare() {
+ default
+ sed \
+ -e '/^CFLAGS=/d;/^install:/s@ install-doc zipman@@' \
+ -e '/install/s@\(schedtool.8\).gz@\1@' \
+ -i Makefile || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTPREFIX="${ED}"/usr install
+ dodoc CHANGES INSTALL PACKAGERS README SCHED_DESIGN TODO TUNING
+}