From e116406a4e4348a627c118bc408bac8cea7d8de0 Mon Sep 17 00:00:00 2001 From: bakedsnake Date: Sun, 9 Aug 2026 14:05:03 +0200 Subject: [PATCH] sys-apps/corefreq: add 9999 Signed-off-by: bakedsnake --- sys-apps/corefreq/corefreq-9999.ebuild | 71 ++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 sys-apps/corefreq/corefreq-9999.ebuild diff --git a/sys-apps/corefreq/corefreq-9999.ebuild b/sys-apps/corefreq/corefreq-9999.ebuild new file mode 100644 index 0000000000..7367b5e29d --- /dev/null +++ b/sys-apps/corefreq/corefreq-9999.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 systemd toolchain-funcs git-r3 + +DESCRIPTION="CPU monitoring and tuning software designed for 64-bit processors" +HOMEPAGE="https://github.com/cyring" +EGIT_REPO_URI="https://github.com/cyring/CoreFreq.git" +LICENSE="GPL-2" +SLOT="0" + +DOCS=( README.md ) + +pkg_setup() { + # see README.md + # required + local CONFIG_CHECK="SMP X86_MSR" + # optional + local optional_checks=( + HOTPLUG_CPU + CPU_IDLE + CPU_FREQ + PM_SLEEP + DMI + HAVE_NMI + XEN + AMD_NB + HAVE_PERF_EVENTS + SCHED_MUQSS + SCHED_BMQ + SCHED_PDS + ) + + CONFIG_CHECK+="$(printf " ~%s" "${optional_checks[@]}")" + + local check + for check in "${optional_checks[@]}"; do + eval "WARNING_${check}"="\"CONFIG_${check} is optional and not enabled\"" + done + + linux-mod-r1_pkg_setup +} + +src_compile() { + local modlist=( corefreqk=misc::build ) + local modargs=( KERNELDIR="${KV_OUT_DIR}" ) + linux-mod-r1_src_compile + + emake V=1 CC="$(tc-getCC)" OPTIM_FLG="${CFLAGS} ${LDFLAGS}" corefreqd corefreq-cli +} + +src_install() { + linux-mod-r1_src_install + + dobin build/{corefreqd,corefreq-cli} + newconfd "${FILESDIR}/${PN}.conf" "${PN}" + doinitd "${FILESDIR}/${PN}" + systemd_dounit "${PN}d.service" +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + + einfo "To be able to use corefreq, you need to load kernel module:" + einfo "modprobe corefreqk" + einfo "After that - start daemon with corefreqd" + einfo "or by 'rc-service corefreq start'" + einfo "And only after that you can start corefreq-cli" +}